無向グラフを2色のみで色付けできるかどうかについてのヒントはありますか? これをJavaでどのように実装できますか?無向グラフを2色のみで色付けできるかどうかを調べる
0
A
答えて
6
breadth-first searchをグラフ上に表示します。すべての偶数の深さでノードを1色、たとえば赤色に、奇数深度にノードの色を青色にします。ツリー以外のエッジ(2つのノード間のエッジ)を使用するたびに、色が異なることを確認します。グラフに複数のコンポーネントが接続されている場合は、各コンポーネントの検索を繰り返すだけです。
1
グラフが2部構成であるかどうかを判断するのと同じです。これを行うには、奇数長のサイクルがグラフに存在するかどうかをチェックする必要があります。そのために、グラフの幅優先探索を行います。 BFS内のどのレベルでも、同じレベルのノード間にエッジがある場合、グラフは二部構成ではなく、つまり、2つの色のみを使用して色付けすることはできません。 (隣接ノードが異なる色でなければならないという制約があると仮定して)
関連する問題
- 1. 無向グラフが木であるかどうかを調べる
- 2. graphNELグラフのノードをどのように色付けできますか?
- 3. 無向グラフに2つの頂点間のパスがあるかどうかを調べる
- 4. 重み付け無向グラフ分割
- 5. 色付き棒グラフ
- 6. chartjs 2+棒グラフの色付けを指定する方法
- 7. 2色グラフで交互の色を持つパスを見つける
- 8. 画像が色付きであるかどうかを確認
- 9. SASS変数にどのように色の強調表示を付けることができますか?
- 10. アンドロイドで現在の日をどのように色付けできますか?
- 11. リストビューで別の色の各アイテムをどのように色付けできますか?
- 12. アレイがグラフを形成できるかどうかを調べる
- 13. グラフの色付けアルゴリズムの実装
- 14. 数字をデータベースからどのように色付けするのですか?
- 15. 色が輪郭内にあるかどうかを調べるOpenCV
- 16. 色が範囲にあるかどうかを調べる方法
- 17. "良い"隣人 - グラフの色付けを見つけるアルゴリズム?
- 18. PHPで日付が2か月以上あるかどうかを調べる
- 19. すべてのノードが有色のノードに色付きまたは隣接するようにグラフに色付けします。
- 20. Python:グラフの色付け中にnumpy.asarrayでエラーが発生する
- 21. このグラフの特定の部分に色を付けるにはどうすればいいですか?
- 22. コンポーネントにテキストをどのように色付けできますか?
- 23. uibutton内のタイトルの色を調べる
- 24. 黒に透明でないすべてのピクセルをどのように色付けするのですか?
- 25. 重み付き有向グラフ
- 26. githubのフレーバー付きマークダウンでテキストに色を付けるにはどうすればいいですか?
- 27. C/C++の "igraph"で重み付けされた無向グラフを作成
- 28. 指定された2つの頂点の間にウェイト付きの有向グラフ内にパスが存在するかどうかを調べる
- 29. OpenCVが読み込み時に色付きの画像に間違った色を付ける
- 30. 処理:2次元配列で描かれた四角形をさまざまな色でどのように色付けできますか?
制約がありますか?色1のn/2ノードと色2のn/2ノードの色付け) – Enrique
あなたに役立つかもしれない同様の質問が見つかりました。http://stackoverflow.com/questions/1838934/checking-for-odd-cycles-in無向グラフ –
私に混乱を与えているのは、2色を使って無向グラフを描くことが可能かどうかを証明しようとしているという事実です。 – rdplt