Bellman-Ford 在那个反例上

👁️ 0 人浏览 💬 0 人评论 ❤️ 添加收藏

同一张有负权边的图,这次用 Bellman-Ford。运行下面这段程序:

def bellman(g, s):
    INF = 10 ** 9
    d = {u: INF for u in g}
    d[s] = 0
    for _ in range(len(g) - 1):
        for u in g:
            if d[u] == INF:
                continue
            for v, w in g[u]:
                if d[u] + w < d[v]:
                    d[v] = d[u] + w
    return d

g = {0: [(1, 4), (2, 5)], 1: [(3, 1)], 2: [(1, -3)], 3: []}
d = bellman(g, 0)
print("/".join(str(d[u]) for u in sorted(g)))
提交你的答案
请登录后提交答案。
去登录
代码编辑器
Ctrl + Enter 运行
本次输入:
输出:

                        
👩‍🏫
AI
💬 题目评论

全部评论