为什么Bellman-Ford算法需要v-1通过?

时间:2018-07-06 08:33:00

标签: algorithm shortest-path

到目前为止,我还没有看到使用Bellman-Ford需要超过2次通过的图形。有没有一个例子确实需要两个以上? (该算法表示在最坏的情况下需要v-1次通过)。谢谢。

2 个答案:

答案 0 :(得分:1)

一个更有趣的示例: G=(V,E)V={1,...,n}E={(j,1,2j), (i,i-1,1) for all j=3,...,n and i=2,...,n}。 (每个边缘是肚(a,b,w),从a到b,w是边缘的权重/距离。)

图形如下所示: enter image description here

到节点1的距离已更新n-1次。

答案 1 :(得分:0)

实际上多少次取决于访问顺序,最好的情况是访问首先负重的广播,最坏的情况是访问最后的广播(因此,您总是需要多次通过将负权重传播到第一个访问的节点。