Algorithm 带负权边有向图的Dijkstra算法

Algorithm 带负权边有向图的Dijkstra算法,algorithm,dijkstra,Algorithm,Dijkstra,以下是具有负权重边的directd图的示例,Dijkstra的算法会为其生成错误的答案: 应用Dijkstra算法,我们得到以下结果: 我们从s到w的路径不是最短的。因此,我们没有得到正确的结果 对于一般情况,我们如何解释为什么不能将Dijkstra算法应用于具有负权重边的有向图?转到math.stackexchange.com:这不是一个编程问题Dijkstra算法仅适用于具有非负权重边的图。将bellman ford用于具有负边权重的图。为了证明为什么算法不适用,一个使算法失败的示例就足够了

以下是具有负权重边的directd图的示例,Dijkstra的算法会为其生成错误的答案:

应用Dijkstra算法,我们得到以下结果:

我们从s到w的路径不是最短的。因此,我们没有得到正确的结果


对于一般情况,我们如何解释为什么不能将Dijkstra算法应用于具有负权重边的有向图?

转到math.stackexchange.com:这不是一个编程问题Dijkstra算法仅适用于具有非负权重边的图。将bellman ford用于具有负边权重的图。为了证明为什么算法不适用,一个使算法失败的示例就足够了。在相关问题中,大约有5个问题问这个确切的问题。但是你似乎已经找到了一个反例来证明它是正确的,那么你的问题是什么呢?@MarkPeters我想知道在没有反例的情况下如何证明它是正确的。