/ /もしグラフが独立集合を持つなら1を出力するグラフから回路を構築する - アルゴリズム、グラフ、リダクション、np、回路図

グラフから独立した集合 - アルゴリズム、グラフ、リダクション、np、回路図があれば、1を出力するグラフから輪郭を構成する

グラフがあるとしましょう。

ここに画像の説明を入力

そしてこのグラフから回路Kを作りたいグラフのサイズが2以上の独立した集合を持つ場合、Kの入力が真になるように入力を設定できます。 私はこれをどうやってやるかについてインターネットやYouTubeでいくつかのまともなことを見たことがあります。

私の考えたプロセスは、次のようなものでした。回路に入力としてエッジを取り、少なくとも1つのエッジが欠けている場合は出力1(true)を持つようにします(このエッジは独立集合です)。

しかし、もし私が正直であれば、頭を包み込むのに苦労します。

回答:

回答№1は0

あなたのアプローチは概念的には正しいが、そこにはさらに簡単な方法:グラフの辺を数える。 N個のノードで、| E |の場合<N *(N-1)/ 2の場合、少なくとも1つの独立したサイズのセット> = 2があります。

検索するには 最大 独立集合、変換トリックがあります概念を比較するのは比較的簡単です。グラフを反転する:辺以外の辺と辺をすべて切り替えます。たとえば、投稿されたグラフには6つの辺のうち4つが含まれています。 DB そして DC.

結果のグラフを見て、最大のクリークを見つけます(これにはたくさんの資料があります)。その最大のクリークは、最大の独立グラフです。