求负环常用方法,基于spfa
(1)统计每个点入队的次数,如果某个点入队n次,则说明存在负环。(至少存在一条路径边数大于等于n)
(2)统计当前每个点的最短路中所包含的的边数,如果某点的最短路所包含的的边数大于等于n,则说明存在负环(一般用第二种方法)
注意:刚开始要将所有的点都加入队列(相当于有一个虚拟源点)(初始化可以是任意值)
求负环时,一般时间复杂度为O(nm)
当所有点的入队次数超过2n时,可以认为图中有很大可能存在负环
求负环总结
最新推荐文章于 2025-03-31 14:06:37 发布
176万+

被折叠的 条评论
为什么被折叠?



