問題は、与えられた重み付けされたエッジの双方向グラフでは、与えられたノードの集合が互いに切断されるようにすることによってエッジの集合を見つける。また、これらの辺の重みの合計も最小にする必要があります。この問題には名前がありますか?特定のアルゴリズムをそれらを解決するには?私はこれがNPの完全な問題でなければならないことを知っています。最小重みのエッジを削除してノードの集合を切断する
1
A
答えて
2
グラフを2つの部分に分ける最小の重量カットを探したい場合は、max flow/min cutアルゴリズム(たとえばEdmondsアルゴリズム)を実行するだけで簡単に行うことができます。 1つの頂点を修正し、他のすべての| V | -1頂点でその最小カットを見つけ、最終的にすべてのカット間に最小カットを配置するだけです。固定頂点は、コンポーネントの1つにある必要があります。無向グラフ上でmax-flow/min cutアルゴリズムを実行すると、各エッジを2方向に描画するだけです。このアルゴリズムは、max-flowアルゴリズム* O(| V |)を実行させます。
しかし、あなたの問題がグラフを最小の重量削減でk連結成分に分割する方法であるなら、これはNP困難な問題です。
関連する問題
- 1. グラフ内の2つの頂点を切断するエッジの最小数を削除する
- 2. 削除ソケット切断
- 3. グラフ内でノードを切断するための最小コストを得る方法
- 4. 化合物の切断された構造を削除する
- 5. グラフを切断せずに削除できるエッジはありますか?
- 6. XSL:子ノードが重複している親ノードを削除
- 7. Neo4j Cypher - CSVロードファイルでない場合に既存のノード/エッジを削除する
- 8. 重複キーを削除して最新のもののみを保存する
- 9. 削除するノードを適切
- 10. PHPでXMLノードを編集して削除する
- 11. 切断時にオブジェクトを削除socket.io
- 12. 親ノード間にxmlノードを移動して重複を削除する - xslt 2.0
- 13. ノードの重複インストール - 最も古いものを削除する方法?
- 14. Java - 二重リンクリストからノードを削除
- 15. 子ノードが空の場合に親ノードを削除します。
- 16. エッジを含む最小スパニングツリー
- 17. 切断された有向グラフが強く接続されるためのエッジの最小数
- 18. 二重リンクリストにノードを追加すると、最初のノードを除くすべてのノードが削除されるのはなぜですか?
- 19. ノードJS mysqlデータベースの切断
- 20. twilioノードの切断イベント
- 21. 前のノードのアドレスを使用してノードを削除する
- 22. 配列で最小ヒープを実装する:Minを挿入して削除する(重複して)
- 23. Pythonの二重リンクリストでノードを削除する際の問題
- 24. 重複したMS Excelを統合して削除する
- 25. 二重リンクリスト内のノードの後にあるノードを削除する
- 26. 二重リンクリスト内のノードを削除する(データ構造体)
- 27. 二重リンクリストのノードを削除する(C++)
- 28. PHPで特定のノードを編集してXMLで削除する方法
- 29. すべてのサイクルを削除するために有向グラフで削除するエッジの最小数はいくらですか?
- 30. ノードを削除して追加する
この宿題はありますか? –
いいえ、これは宿題ではありません。 –
この問題は、「最小kカット」または「最小マルチターミナルカット」と呼ばれます。参考までに[Wikipedia](http://en.wikipedia.org/wiki/Minimum_k-cut)を参照してください。 –