Dijkstra 算法是对称的吗?
Is Dijkstra's Algorithm symmetrical?
在Dijkstra算法中求正权图中的最短路径,会不会存在路径A->B不等于路径B->A的情况? (A 和 B 是图上的顶点)。你能举个例子吗?
如果图形不是方向性的,从A
到B
(S_{ab}
)的最短路径集与从B
的最短路径集相同至 A
(S_{ba}
)。你可以用反证法来证明。
假设不是。所以至少有一条路径P
从B
到A
不在S_{ab}
中。
由于图形没有方向性,因此从 A
到 B
存在相同的路径。如果路径的长度大于 S_{ab}
中的所有路径,那么它不是从 B
到 A
的最短路径,因为你可以从 B
return ] 到 A
与 S_{ab}
.
中的最短路径之一
此外,如果 P
的长度小于 S_{ab}
中的路径长度,那么我们可以从 A
到 B
的成本小于成本S_{ab}
中的所有路径。因此,根据集合的定义,P
必须在 S_{ab}
中。但是,它与假设相矛盾。因此,这是不可能的。
在Dijkstra算法中求正权图中的最短路径,会不会存在路径A->B不等于路径B->A的情况? (A 和 B 是图上的顶点)。你能举个例子吗?
如果图形不是方向性的,从A
到B
(S_{ab}
)的最短路径集与从B
的最短路径集相同至 A
(S_{ba}
)。你可以用反证法来证明。
假设不是。所以至少有一条路径P
从B
到A
不在S_{ab}
中。
由于图形没有方向性,因此从 A
到 B
存在相同的路径。如果路径的长度大于 S_{ab}
中的所有路径,那么它不是从 B
到 A
的最短路径,因为你可以从 B
return ] 到 A
与 S_{ab}
.
此外,如果 P
的长度小于 S_{ab}
中的路径长度,那么我们可以从 A
到 B
的成本小于成本S_{ab}
中的所有路径。因此,根据集合的定义,P
必须在 S_{ab}
中。但是,它与假设相矛盾。因此,这是不可能的。