最短路问题
最短路问题(Shortest Path Problems):给定一个网络,网络的边上有权重,找一条从给定起点到给定终点的路径使路径上的边权重总和最小。...最短路问题常用Dijkstra算法解决
Dijkstra算法
Dijkstra算法是典型的单源最短路径算法,用于计算一个节点到其他所有节点的最短路径。...我们还是以上面的图为例
先用邻接矩阵表示无向图:
MAX = 9999
g= [
[0, 1, 4, 6],
[MAX, 0, MAX, 2],
[MAX, MAX, 0,...「把Dijkstra 算法应用于无权图,或者所有边的权都相等的图,Dijkstra 算法等同于BFS搜索。」
多点求解
在很多的时候,要求输入一组点,然后求出输入一个起始点,得到无向图最短路径。...之所以更新U中顶点的距离,是由于上一步中确定了k是求出最短路径的顶点,从而可以利用k来更新其它顶点的距离;例如,(s,v)的距离可能大于(s,k)+(k,v)的距离。