グラフをノード分離サイクルに分割する


15

関連問題: Veblenの定理は、「グラフが偶数の場合にのみ、サイクル分解を認める」と述べています。サイクルはエッジがばらばらですが、必ずしもノードがばらばらではありません。別の言い方をすれば、「グラフのエッジセットをサイクルに分割できるのは、すべての頂点が偶数次である場合に限ります」。

私の問題:グラフをノード分離サイクルに分割することを誰もが研究したのだろうか。つまり、グラフGの頂点V 1V 2V kに分割し、V iによって誘導される各サブグラフはハミルトニアンです。VGV1,V2,,VkVi

NP困難ですか、それとも簡単ですか?

より関連する問題: 三角形への分割はNP完全です。(「コンピューターと難治性」の68ページ)

事前にご連絡いただきありがとうございます。^^


8
マッチングは簡単に削減できます。アルゴリズムのよく知られた練習。
チャンドラチェクリ

1
これはあなたの問題ですか:en.wikipedia.org/wiki/Vertex_cycle_cover
トーマスエーレ

@ThomasAhleありがたいことに、私はそのwikiページを知りませんでした。そのwikiページで言及されている「ディスジョイントサイクルカバー」と呼ばれます。
鵬張

回答:


20

頂点独立サイクルへの分割は、2正規サブグラフと同じもので、一般に2ファクターとして知られています。(存在する場合)マッチングに基づくアルゴリズムにより、多項式時間で見つけることができます。たとえば、このリンクを参照してください

ETA 2013年11月:以下のコメントから、上記のリンク元からの削減は間違っているようです。ただし、問題を完全に一致するまで減らすことができるという記述は正しいままです。正しい削減は、WT Tutte(1954)、「有限グラフの因子定理の簡単な証明」、カナダJ. Math。6:347-352

各頂点を次数dで完全な2部グラフG v = K d 置き換えますvd、及び各エッジを表し、Uは、Vの一つの頂点からエッジによって元のグラフの G 、Uのいずれかの頂点 GのV(と2分割の側のDの各頂点ようにAのように頂点) G V 2分割のその側には、そのようなエッジが1つだけあります。Gv=Kd,d2uvGuGvdGv

次いで、修飾されたグラフで完全一致が一致しなければならないの2分割のその側に頂点GのVD - 2からDの必要性と一致することがちょうど二つの自由な頂点を残し、他の側に頂点を他のサブグラフG uの隣人。このようにして、変更されたグラフの完全な一致は、元のグラフのサイクルカバーと1対1に対応します。d2Gvd2dGu


わかりません。このアルゴリズムについて私が見つけたすべての言及は、オイラーツアーの計算から始まります。ただし、オイラーツアーがなくてもサイクルをカバーできるグラフはたくさんあります。すべてのエッジを使用する必要がない場合もPにありますか?
トーマスアール

リンクした記事を読みましたか?オイラーツアーについての言及はありません。
デビッドエップシュタイン

理解するのは少し難しいです。あなたが構築すると各エッジを変更することにより、I Eからエッジまで V V "I J ")どのように配置するためにどのエンド知っ Vとに入れている V "?...紙は「ちょうど秒1を取る」ように見えるが、それは有向グラフではありません(i,j)VV(i,j)VV
トーマスAhle

1
つまり、すべての無向エッジを各方向の有向​​エッジに変換することもできますが、マッチングにより多くの「長さ2」サイクルが得られる可能性があります。
トーマスアール

1
@ThomasAhleは明らかに用語を混同しました。私が意味したのは、通常のスパニンググラフ、別名k-ファクターですkk
マンフレッド・ワイス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.