? 重点:dijkstra算法按层计算其余点到源点的最短距离,层层扩展。 1. dijkstra算法 求解目标:找到图中源点到其余点的最短距离,是单源点最短距离算法。 整体思路:每一步都寻找到与源点 最近的点 ,层层扩展,是贪心算法。 具体实现: 输入:给定一个图的邻接表M,源点u。 辅助变量:存储 ...
分类:
编程语言 时间:
2020-03-02 22:25:27
阅读次数:
86
2020-03-01 22:59:59 问题描述: 给你一个 m x n 的网格图 grid 。 grid 中每个格子都有一个数字,对应着从该格子出发下一步走的方向。 grid[i][j] 中的数字可能为以下几种情况: 1 ,下一步往右走,也就是你会从 grid[i][j] 走到 grid[i][j ...
分类:
其他好文 时间:
2020-03-01 23:18:08
阅读次数:
109
两个指定顶点之间的最短路径: 两个指定顶点之间最短路问题的数学规划模型: 每对顶点之间的最短路径: 最小生成树问题: Prim算法: Prim算法类似病毒感染的过程,其中P中存放的是已经计算出的顶点(即前一顶点与后一顶点构成的边在最短路径上),然后遍历P中所有的顶点,找出与V-P中所构成的边的最小值 ...
分类:
编程语言 时间:
2020-03-01 18:22:11
阅读次数:
146
(1)进程的概念(Dijkstra) 进程是可并发执行的程序在某个数据集合上的一次计算活动,也是操作系统进行资源分配和调度的基本单位。 (2)进程与程序的联系与区别 ① 程序是指令的有序集合,其本身没有任何运行的含义,是一个静态的概念。而进程是程序在处理机上的一次执行过程,它是一个动态的概念。 ② ...
分类:
编程语言 时间:
2020-03-01 12:21:48
阅读次数:
58
作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候,你的任务是带领你的救援队尽快赶往事发地,同时,一路上召集尽可能多的救援队。输入格式 ...
分类:
其他好文 时间:
2020-02-29 22:48:14
阅读次数:
91
1965年dijkstra提出了一个关于进程同步问题,大致意思如下: 有5个哲学家坐在一张圆桌上,每个哲学家左右两边各有一个叉子。 只有当集齐两个叉子,才能够吃饭,否则哲学家就得乖乖去思考。 桌子上就5个叉子,理论上同时可以让两个哲学家进餐,那么怎么用两个进程来模拟这个状态呢? 0x001 这几个哲 ...
分类:
其他好文 时间:
2020-02-23 18:07:46
阅读次数:
65
Dijkstra算法适用范围是单源最短路,有向图或者无向图,不能处理负权值 Floyd算法适用多源最短路,有向图或者无向图,可以处理负权值但是不能处理负权回路 Ford 算法多源最短路,可以处理负权值,能检测负权回路 Leetcode 743. 网络延迟时间 先用Dijkstra算法解,输入是vec ...
分类:
编程语言 时间:
2020-02-23 11:55:45
阅读次数:
90
L2-001 紧急救援 题意:就是给你一张n<500的图;让你求最短路径,最短路条数,以及路径; 做法,先用dijkstra求最短路,然后dfs找最短路条数,以及点权的最大值; 一般dfs不就可以解决这个问题吗,像n皇后求次数,注意回溯即可; 那如何dfs确定这条路是最短路径呢?贪心思想,枚举每一个 ...
分类:
其他好文 时间:
2020-02-22 20:14:25
阅读次数:
120
1178 H. Stock Exchange 题意: 有$2n$只价值随时间线性变化的股票,即价值为$a_it+b_i(i=1,\cdots,n)$.初始时刻持有$1$到$n$各一份,在整数时刻可多次交易,每次交易可将一份股票换成在当前价值更低的任意一份,可以同时持有多份同种股票,目标是持有$n+1 ...
分类:
其他好文 时间:
2020-02-22 12:19:21
阅读次数:
70
求最短路暂时掌握了4种,但感觉就dijkstra复杂度能用; 1 floyd算法: 就是暴力的三重循环,以每个点为中转点,每次遍历所有的点,看看能不能通过这个中转点更新最短路径; 优点:n<200时用这种方法,用邻接矩阵存图 ,可求任意的两点的最短路;而且好写; 缺点:复杂度太高,O(n^3)的复杂 ...
分类:
编程语言 时间:
2020-02-22 10:16:39
阅读次数:
71