Dijkstra法は負の重み辺が含まれるグラフでも常に正しく動作するか? 2025.09.22 Dijkstra法は負の重み辺が含まれるグラフでも常に正しく動作するか? 常に正しく動作する 負の重み辺があっても負のサイクルがなければ動作する 負の重み辺があっても辺数が少なければ動作する(工夫次第で可) 負の重み辺が存在する場合は正しく動作しない Dijkstra法は「未確定の最短距離の中で最小のものを確定する」という貪欲戦略を取り、これは全辺の重みが非負であることを前提に正当性が保証されます。負の重みがあると、確定したはずの頂点に後からより短い経路が現れる可能性があり、誤った結果を返すためBellman-Ford法など負辺を扱えるアルゴリズムを使う必要があります。 クイズタグ: 競技プログラミング関連記事 競技プログラミングクイズ!【問題 全10問・答え付き】 | 2025年09月版