Dijkstra 算法是对称的吗?

Is Dijkstra's Algorithm symmetrical?

在Dijkstra算法中求正权图中的最短路径,会不会存在路径A->B不等于路径B->A的情况? (A 和 B 是图上的顶点)。你能举个例子吗?

如果图形不是方向性的,从ABS_{ab})的最短路径集与从B的最短路径集相同至 A (S_{ba})。你可以用反证法来证明。

假设不是。所以至少有一条路径PBA不在S_{ab}中。 由于图形没有方向性,因此从 AB 存在相同的路径。如果路径的长度大于 S_{ab} 中的所有路径,那么它不是从 BA 的最短路径,因为你可以从 B return ] 到 AS_{ab}.

中的最短路径之一

此外,如果 P 的长度小于 S_{ab} 中的路径长度,那么我们可以从 AB 的成本小于成本S_{ab} 中的所有路径。因此,根据集合的定义,P 必须在 S_{ab} 中。但是,它与假设相矛盾。因此,这是不可能的。