0

ダイクストラアルゴリズムでは負のエッジが許可されていないのに、ベルマンフォードアルゴリズムでは負のエッジサイクルが許可されているのはなぜですか?

4

1 に答える 1

6

許可された?Bellman-Ford アルゴリズムは、負の重みを持つ明確なエッジを許可しますが (ダイクストラ アルゴリズムではサポートされていません)、どちらのアルゴリズムも負のサイクルを「許可」しません。最短経路問題は、負のサイクルが存在する場合は意味がありません。そのため、そのようなアルゴリズムで負のサイクルを「許可」する意味のある方法はありません。

Bellman-Ford アルゴリズムは、負のサイクルの存在を検出して実行を中止するように作成できます (この場合、正しい解が存在しないため、中止します)。

于 2010-11-29T18:57:40.780 に答える