小编Nie*_*hra的帖子

修改的最短路径算法(Dijkstra's)

所以我的问题是我有一个非负边长的有向图G,我希望找到两个节点u和v之间的最短路径,这样它们只能通过图中的一个标记节点.

如果我们没有涉及标记节点的条件,则可以使用Dijkstra算法轻松解决该问题.

procedure dijkstra(G, l, s)
Input: Graph G = (V, E), directed or undirected;
positive edge lengths {le : e ? E}; vertex s ? V
Output: For all vertices u reachable from s, dist(u) is set to the distance from s to u.

for all u ? V :
    dist(u) = ?
    prev(u) = nil
dist(s) = 0
H = makequeue(V ) (using dist-values as keys)
while H is not empty:
    u = deletemin(H)
    for all …
Run Code Online (Sandbox Code Playgroud)

graph path-finding

6
推荐指数
1
解决办法
393
查看次数

MST的线性时间算法

我想知道是否有人可以指向线性时间算法,以便在存在少量权重时找到图形的MST(即边缘只能有2个不同的权重).

除了Prim's,Kruskal's,Boruvka之外,我在google上找不到任何东西,其中似乎没有任何属性会减少这种特殊情况下的运行时间.我猜它是线性时间,它必须是对BFS的某种修改(当权重均匀时找到MST).

algorithm graph

5
推荐指数
1
解决办法
836
查看次数

标签 统计

graph ×2

algorithm ×1

path-finding ×1