Dijkstra算法解析(java+图解)
Dijkstra是解决单源最短路的最优策略,但是不能有负权边(就是边长为负值)
适用范围:有向图(无向图为特殊的有向图),无负权
每个阶段,选择一个顶点t,它是所有未知点中具有最小的d,循环遍历进行更新,看d是否能够使原有距离更小
1.遍历所有点,这时所有点未确定,发现v1的距离最小为0,v1变为已确定,对所有能到达的点进行更新 v2=0+w(v2)=2,v4=0+w(v4)=1,到达不到的点INF和INF+w比还是保持原来的inf 没变
2.遍历,v1已经确定不能看,v4和v2中v4最小,将v4设置为
原创
2021-04-10 18:09:06 ·
670 阅读 ·
0 评论