O(E)最短路径

时间:2017-11-09 00:34:12

标签: algorithm time-complexity shortest-path bellman-ford

有没有办法在O(E)中找到任意权重的图中单个源到顶点的最短路径,但如果最短路径有7个或更少的边,你只需要担心它。

Bellman-Ford算法的最佳案例运行时间为O(E),这适用于此吗?

1 个答案:

答案 0 :(得分:1)

如果您知道所有顶点的步长为< = N 的最短路径,则可以轻松计算最短路径< = N + 1 迭代边缘并评估每条路径可以制作的较长路径。

N = 0 时,到源顶点的最短路径长度 0 ,到所有其他顶点的最短路径长度无穷大 (即,你无法到达那里)。您只需迭代 7 次,就可以找到到达<=> N = 7 步骤的最短路径,总运行时间为< strong> O(E)如果您对数据结构有点小心。