無向グラフ、重み付けされていないグラフでは、平均最短経路長対、グラフの直径を計算するアルゴリズムの複雑さ、すなわち2つの間の最長最短経路を計算するアルゴリズムの時間複雑さに違いがあります頂点?グラフの平均最短経路長と直径アルゴリズムの時間の複雑さに違いはありますか?
3
A
答えて
2
Wikipediaによれば、グラフの直径を計算するには、まず、すべてのペアの最短経路を見つける必要があります。すべてのペアの最短経路を計算した後、両方のアルゴリズムはO(V^2)計算に縮小され、その複雑さは同じになります。
0
いいえいいえ、2つの間の時間の複雑さに違いはありません。
2つの頂点間の最長経路は、最短経路algoを微調整することで見つけることができます。
1
私はこの件について多くの文献を読んでいませんが、2つは同じであると思われます。しかし、矛盾がある場合は、グラフの直径を計算すると漸近的に速くなると言えます。
私のアルゴリズムは、V*(E+V*log(V))
で実行されるDijkstraのアルゴリズムを使用して、すべてのペアの最短パスを計算することです。その後、これらの値すべてに対して算術平均を取ることになります。私はあなたがこれをスピードアップできる方法は見ません。
しかし、グラフの直径を計算するために、このプロセスをスピードアップするために使用できる巧妙なトリックがあるかもしれません。しかし、上限として、あなたは単純に全ペアの最短パスを上に取って直径を得ることができます。これは、平均最短パスを計算するのと同じ実行時の複雑さを持ちます。
関連する問題
- 1. 最長最短経路(あまり)
- 2. 最短経路アルゴリズム
- 3. dijkstraの最短経路アルゴリズム
- 4. Djikstraの最短経路アルゴリズム
- 5. JGraphTグラフの最短経路
- 6. C++ k最短経路アルゴリズム
- 7. 最短経路アルゴリズム:複数のソース、最も近い宛先
- 8. Dijkstraの最短経路アルゴリズムの変更
- 9. Dijkstraの最短経路アルゴリズムの問題
- 10. Networkx - 最短経路長
- 11. 最短経路アルゴリズムのjsエラー
- 12. 最短経路アルゴリズムへの調整
- 13. ベルマンフォード最短経路アルゴリズムの性能
- 14. フロイド・ウォーシャル最短経路アルゴリズムのエラー
- 15. sna:Dijkstraアルゴリズムの修正(最短経路)
- 16. Floydの最短経路アルゴリズムC++
- 17. グラフ内の最短経路の数
- 18. 最短経路、最低回転アルゴリズム
- 19. サイクル指向の最短経路グラフ
- 20. 優先順位グラフの最短経路
- 21. Scala - 2つのノード間の最短経路再帰アルゴリズム
- 22. グループ平均クラスタリングのアルゴリズム的複雑度
- 23. ダイクストラのアルゴリズムは最短経路を生成しませんか?
- 24. 最長経路の色分けアルゴリズム
- 25. 障害物回避ロボットの自由空間に最短経路を見つけるアルゴリズムはありますか?
- 26. Floyd-Warshallアルゴリズム:最短経路を得る
- 27. 重み付けされていないグラフの最短経路
- 28. アルゴリズムの複雑さと実行時間
- 29. シングルソースシングルターゲット最短経路のDijkstraアルゴリズムを改善するには?
- 30. アルゴリズムの時間の複雑さは問題ありませんか?
ダイクストラのアルゴリズムは、すべてのペアの最短パスではなく、単一ソースの最短パスのみを計算します。すべての対の最短経路を計算するDijkstraのアルゴリズムの修正は、Floyd-Warshallより優れている場合があるJohnsonのアルゴリズムです。 – templatetypedef
すべての単一ソースでダイクストラのアルゴリズムを実行するだけです。 FWよりもまだ高速です。 – tskuzzy
@ tskuzzy-ジョンソンのアルゴリズムは、負の重みのエッジを排除するためにグラフを前処理した後、基本的にこれを行います。 :-) – templatetypedef