摘要:
bellman-ford判负环,据bellman-ford的性质最后得出的是通过不超过n-1条边的从起点到其他点的最短距离(因为n个点,所以n-1条边) 但是如果在n-1次循环之后仍然存在边可以被松弛,那么就存在负环(因为如果没有负环n-1次就已经确定了最短距离,具体可参考bellman-ford证 阅读全文
posted @ 2020-11-19 14:13
greenofyu
阅读(229)
评论(0)
推荐(0)
摘要:
floyd是用来解决多源最短路的 其核心思想是动态规划,d[ k , i , j ] 表示以不超过k的点为中间点从 i 到 j 的最短距离 d[k , i , j ]=min(d[k-1 , i , j ] ,d[k-1 , i ,k ]+d[k-1, k , j ]); 为了保证k的状态都是从k- 阅读全文
posted @ 2020-11-19 09:04
greenofyu
阅读(101)
评论(0)
推荐(0)
摘要:
spfa的最坏时间复杂度是O(nm),但是一般达不到这么高 spfa是bellman-ford算法的升级版,bellman-ford是每次对所有的边判断是否可以松弛,但是实际上只有从刚刚松弛的点出发的边才有可能松弛其他点 所以就可以省去很大一部分的判断 1 #include<iostream> 2 阅读全文
posted @ 2020-11-19 08:59
greenofyu
阅读(136)
评论(0)
推荐(0)
摘要:
bellman-ford是一个可以求带负权边的单源最短路,但是时间复杂度是铁定的O(nm),所以我们一般用他的优化版本SPFA,不过由于bellman-ford算法的流程,它也可以用来解决一类特定的问题 那就是求出起点到其他点经过不大于k条边的最短路径 1 #include<iostream> 2 阅读全文
posted @ 2020-11-19 08:54
greenofyu
阅读(121)
评论(0)
推荐(0)
浙公网安备 33010602011771号