【发布时间】:2014-03-27 22:30:30
【问题描述】:
假设存在一个有向图G(V, E)(V 表示顶点,E 表示边),其中每条边 (x, y) 与权重 (x, y) 相关联,其中权重是介于 1 和10.
假设s 和t 是V 中的一些顶点。
我想在 O(m + n) 时间内计算从s 到t 的最短路径,其中m 是顶点数,n 是边数。
我在实施拓扑排序以实现这一目标时是否走在正确的轨道上?还是我忽略了另一种技术?
【问题讨论】:
-
广度优先搜索?
-
为什么要拓扑排序?就因为那有相同的运行时间?
-
这与拓扑排序无关。
-
Dial 对 Dijkstra 算法的实现怎么样?
-
只使用一个桶列表作为优先队列。我们可以证明,队列中始终不会有超过 10 个不同的标签。也许那是 Dial 的实现,也许不是,我不知道
标签: performance algorithm sorting big-o topological-sort