请问BellmanFord算法判断负权环是否也可以使用和Floyed一样的方法?

来源:12-8 负权环

martin123_

2019-10-04

如题

写回答

1回答

liuyubobobo

2019-10-04

不可以。因为 Bellman-Ford 是单源最短路径,只是从一个源点出发。所以直接看 dis[s][s] 是否是负数,只能看出来有没有通过 s 的负权环。但是一个负权环可以不通过 s。


但是对于 floyd 算法来说,由于求的是所有点对最短路径,而一个负权环肯定通过某一个点,所以检查所有的 dis[v][v] 是有效的。


继续加油。

0
3
martin123_
回复
liuyubobobo
好吧,前面笔误了;应该理解了,感谢
2019-10-04
共3条回复

玩转算法系列--图论精讲(Java版)

30+小时系统学习,bobo带你克服被图论支配的恐惧

1591 学习 · 324 问题

查看课程