【发布时间】:2021-03-17 20:37:21
【问题描述】:
最近看到Bellman Ford and Some Facts这个问题如下:
我们知道 bellman-ford 算法会检查每一步中的所有边,并且对于每条边,如果 d(v)>d(u)+w(u,v) 成立则 @ 987654329@ 正在更新。 w(u,v) 是边 (u, v) 的权重,d(u) 是顶点 u 的最佳查找路径的长度。如果在任何一步有no update for any vertexes,算法terminate。
为了找到从图 G 中的顶点 s 到 n 顶点的所有最短路径,此算法在 k < n 迭代后终止。
以下事实是正确的。
从
s开始的所有最短路径中的边数最多为k-1
在这个Book 中,我们有 3 个 BFord 的实现(一些优化)。我的问题是,如果我们有 同时放松应该使用其中的哪种算法,并且通过使用它,上述事实应该是正确的?还是一般情况下上述事实是正确的?
【问题讨论】:
-
为什么你有java和c++标签。我们不赞成在这里发送垃圾邮件。
标签: java c++ algorithm data-structures graph