【发布时间】:2015-05-04 09:27:21
【问题描述】:
现在我知道如果图形包含负权重边,Dijkstra 将无法工作。但有一个例外。 (只有离开源的边可以有负权重,而所有其他边必须是正的。)
我希望能够证明这一点。我不知道如何开始。我已经制作了一些图表,并且所有这些 Dijkstra 最终都能完美运行,但我不明白如何证明这一点?
所以我真正想要的是有人证明 Dijkstra 在这种情况下可以工作或不会(只有来自源的传出边是负的。)
另外,图表不能包含任何涉及源的循环。
【问题讨论】:
-
这个例外是不正确的。考虑一个图
a->b->c->a,其中a是源,w(a,b) = -5, w(b,c)=w(c,a)=1该图有一个负循环,并且没有到任何节点的最短路径。 -
你的意思是说不存在负长度的循环吗?
-
对不起,我需要提一下,图中没有涉及源的循环。
-
@Codor 如果唯一的负边离开源,这两个声明是等价的。