Dijkstra算法实现要点总结

1、算法实现中定义两个集合U和S,其中S记录已求出最短路径的点,U是还未求出的最短路径的点

2、将起始点加入S中,在U中找出距离起始点的最短距离的点,并将其加入到S中,

3、更新U中所有顶点到起始点的最短距离(注意:这个是每次从U中找出一个距离起始点的最短路径点,都要对U中所有的顶点进行一次最短路径更新)

4、U中的所有与起始点不直接相邻的点到起始点的最短路径都定为无穷大,这样就间接使用了广度优先搜索算法(个人理解)

你可能感兴趣的:(数据结构与算法)