質問

$ g=(x \ cup y、e)$ は、uなくているバイアラリテグラフになります。 $ w \ subseteq x $ のごとに $ | w | \ Leq | n(w) | $ 。ここで、 $ n(w)$ $の neighborhod です。 $ Y $ (別名ホールの結婚条件)。

私の目標は、 $ | wのサブセット $ w ^ * \ subseteq x $ を見つけることです。w ^ *= | n(w ^ *)| $ 、そのようなサブセットが存在する場合(明らかにそれは存在する必要はありません)。このプロパティの正式な名前を知らないので、そのような $ w ^ * $ を参照します飽和集合

質問:

  1. この財産は広く知られていますか?それは別の名前を持っていますか?
  2. 結婚条件が成立すると仮定すると、飽和セットのすべての組合も飽和していることを明らかにしています。 1つの興味深い問題は、最大飽和セットを見つけることです。 Runtime $ O(| v | e |)$ を使用したやや素朴な解決策を以下に説明しますが、私はさらに速く解決できると思います。
  3. とされると、弱く簡単な問題は、必ずしも最大1つのものではなく、必ずしも最大1つのものではない(結婚条件が成立すると仮定して)を見つけることです。この問題を $ Oよりも速く解決できます(| V | \ CDot | e |)$

  4. 編集: これが上記のアルゴリズムのためのスケッチです。結婚条件が $ g $ の場合と仮定します。それから、言ったように、ビット理論の仕事で私たちはそのことを示すことができます

    lemma: $ g $ 結婚条件を満たす二者グラフにする。その後、飽和セットのすべての連合も飽和しています。

    レンマは、固有の最大飽和セットが存在することを示唆しています。問題は異なる方法で述べられている可能性があります。

    ノード $ x \ in x \ x x \ x x \ x \ \ span>で、飽和セットに参加しているかであるかどうかを判断します。

    答えがYESの場合は、最大飽和セットにも参加しています。疑似アルゴリズムは次のようになります。

    1. 最大マッチングを見つけるためにhopcroft-karp アルゴリズム $ Oの $ x $ をカバーしています。 \ sqrt {| v |} | e |)$ 時間。そのようなマッチングは結婚条件のために存在します。
    2. すべてのノード $ x \ in x $ の場合、
      • ノードを一時的に追加する $ x $ $ x $ に一時的に追加します。 span class="math-container"> $ x $ 。 $ g_x $ を取得するグラフを呼び出します。
      • $ m $ は、 $ g_x $ の一部マッチングであることに注意してください。一つのエッジへ)。したがって、 $ g_x $ の最大マッチング $ g_x $ $ o(| v | + | e |)$ 時間(同じ詳細Hopcroft-Karp)。
      • $ | m | <| m_x |、$ 続行します。そうでなければ、 $ | m |= | m_x | $ $ x $ を返されたセットに追加します。
    3. 分析は最初の原則から次のとおりです。 $ x \ in w $ で飽和したセット="math-class"> $ w \ subseteq x $ w \ subseteq x $ が存在する場合、 $ | w |= | N_G(W)| $ $$ | w \ cup \ {x '\} |= | +1= | n_g(w)| + 1= | N_ {g_x}(w)| +1、 $$ そのため、 $ W \ cup \ {x '\} $ $ g_x $ の結婚条件に違反します。したがって、 $ | m |= | m_x | $ $ x $ が飽和したセットに参加していない場合は、 $ | m_x |= | m | +1 $

役に立ちましたか?

解決

最大マッチング $ m $ を修正しましょう。 $ z \ subeteq y $ $ x $ のノードと一致しないノードのセットです。 。 $ x \ \ x \ x \ \ x \ x \ x \ x \ x=" math-containerからの交互パスが存在しない場合に限られています"" $ z $ のノードへ、つまりパス $ xy_1x_1 \ cdots y_kx_kzの$ x $ $ ここで、 $(x_i、y_i)\ in m $ および $ z (証明はあなたのアルゴリズムの正当性証明と似ています)。

では、 $ m $ のエッジが $ e $ の方向を追加できます。 $ x $ から $ y $ にあります。 container "> $ m $ は、 $ y $ から $ x $ への方向を持っています。その後、 $ x $ のノードは、 $ z $ で到達できません。飽和セット $ Z $ のノードから該当するノードがノードから到達可能などちらのノードを見るために単純なBFSを実行できます。 。 Timeの複雑さは $ o \ herftです(\ sqrt {|} | e | \ right)$

ライセンス: CC-BY-SA帰属
所属していません cs.stackexchange
scroll top