在此借用上一篇文章[深度优先搜索(DFS)两点之间的可行路径](深度优先搜索(DFS)两点之间的可行路径)中的例子:
?...而Dijkstra主要用于解决有权图的最短路径求解,为了更好地演示Dijkstra的过程,可以为这个图的边加上权重,可以认为边的权重即为两点之间的距离:
?...显然,从1到6的路径中,权重和最短的路径有两条,一条是[1,2,4,5,6],另一条是[1,3,6],距离都是4。...但是更大的图就不能仅凭肉眼判断了,下面将演示如何使用Dijkstra算法求出图中两点之间的距离。..., [None], 0], [2, [1], 1], [3, [1], 2], [4, [2], 2], [5, [4], 3], [6, [3, 5], 4]]
可以看到从1到6的最短距离为4,并且路径中沿途的点都已经记录下来了