问题陈述:
令G = (V,E)是一个有向图,在每条边e ∈ E上具有成本c e ∈ ℝ 。G中没有负循环。假设有一个汇节点t ∈ V,并且对于每个节点v ∈ V,都有一个标签d v ∈ ℝ。
给出一个算法,它在线性时间内确定对于每个v ∈ V是否为真,d v是从v到汇节点t的最小成本路径的成本。
试图:
我发现最大的挑战是线性时间限制。这里要考虑的最相关的算法是 Bellman-Ford 算法,但运行时间为 O(|V|·|E|) 太慢,因此需要针对此问题进行修改。
我也做了一个观察:
例如,如果(u,v) ∈ E 且c (u,v) = 1,且d u = 3 且d v = 5,则标签d v是错误的。这是因为从v到u的成本为 1,从u到t的最低成本为 3,总成本为 4,比d v给出的从v到t的假设最低成本(5 .
我不确定我是否可以使用这种洞察力来生成线性算法,但这是迄今为止我得到的最远的。