给定双面图 $ g=(v_1 \ cap v_2,e)$ 和set $ v'\在(v_1 \ cup v_2)$ 。在 $ g $ 中找到最大匹配的复杂性是什么,它仅使用 $ x $ 顶点 $ V'$

有帮助吗?

解决方案

set $ v_i'= v_i \ cap v'$ 。您可以通过在 $ k $ 顶点 $ v_1' $ 和最多 $ xk $ from $ v_2' $ 所有 $ k \在[0,x] $ 中。这又可以找到最大流量。

要查找此最大匹配,我们会修改通常的减少到最大流量。让 $ s $ 是source和 $ t $ 接收器。让 $ l $ $ r $ 是辅助顶点。从 $ s $ $ l $ ,带有容量 $ k $ ,以及 $ r $ to $ t $ 容量 $ xk $ 。所有其他边缘都有容量 $ 1 $ 。从 $ l $ 中添加一个边缘,每个 $ x \ in v_1'$ ,来自 $ s $ 到每个 $ x \ in v_1 \ setMinus v_1'$ 。从每个 $ y \中添加边缘,v_2' $ $ r $ ,从每个 $ y \ y v_2 \ setminus v_2'$ $ t $ 。对于 $(x,y)\在e $ 中,从 $ x $ 中添加边缘到 $ y $ 。现在,最大流量为最多的 $ k $ 顶点提供最大匹配 $ v_1' $ 和<跨越类=“math-container”> $ xk $ $ v_2' $

因此,我们可以解决 $ \ mathcal {o}(x \ cdot m)$ 其中 $ m中的问题$ 是最大流量的复杂性。最大流量问题非常相似,因此我们可以提高此问题。

我们可以通过 $ 1 $ 增加或减少任何边缘的容量,同时保持 $ \ mathcal { o}(| e |)$ 。首先在 $ V'$ 中使用顶点使用顶点计算最大匹配。然后,从 $ s $ $ l $ by $ x $ 。然后,在每个步骤中,从 $ r $ $ t $ 并降低容量从 $ s $ $ l $ ,同时保持最大流量。输出生产的最大匹配。复杂性将是 $ \ mathcal {o}(| e | \ sqrt {| v |} + x \ cdot | e |)$ 如果我们使用大道查找初始二分匹配。

许可以下: CC-BY-SA归因
不隶属于 cs.stackexchange
scroll top