找到具有非常重要顶点的二分图顶点覆盖

时间:2011-08-11 23:26:38

标签: computer-science graph-theory

我知道我可以通过首先找到最大匹配然后使用Konig's Theorem将此匹配转换为相同顺序的顶点封面来找到二分图的最小顶点覆盖。

但是,获得的结果只是许多有效顶点覆盖中的一个。在下图中,{A,B},{C,D}和{B,C}都是有效的封面。应用Konig方法会产生封面{A,B}。

(A)=====(C)
       /
     /
   /
(B)=====(D)

您如何检查是否存在包含给定重要顶点的最小顶点覆盖,例如顶点D?

我的第一个猜测是翻转图形并找到另一个最小顶点覆盖。在上面的例子中,这将产生{C,D}。如果两个解决方案都不包含重要的顶点,则它不是任何最小封面的一部分。但是,我没有想到要真正向自己证明这一点。

1 个答案:

答案 0 :(得分:1)

我建议采用以下方法

  1. 找到最小顶点覆盖的大小(让顶点覆盖为$ C $)
  2. 删除“非常重要的顶点”及其覆盖的所有边缘(顶点为$ v $)
  3. 重复此过程,让新的顶点覆盖为$ C'$
  4. 如果$ | C'+ V | = | C | $然后报告最小顶点覆盖其他报告没有给定顶点存在最小顶点覆盖。

    我猜你有相同的答案,证据也是一致的。

    新的顶点覆盖不能小,因为它会违反$ C $是最小顶点覆盖之一的条件。

    $ C'$也是覆盖图表其余部分的最小封面。

    如果至少有一个包含顶点$ V $的最小顶点覆盖,则该集合中的其余顶点将覆盖除$ V $附近的顶点之外的所有顶点,但这意味着$ | C' | $不大于$ | C | -1 $因此,执行此操作意味着不存在包括VIP边缘的最小顶点覆盖。