概念:
设图 G={V,E}
- 匹配:在
G
中两两没有公共端点的边集合
M⊆E - 边覆盖:
G
中任意顶点都至少是
F 中某条边的端点的边集合 F⊆E - 独立集:在
G
中两两互不相连的顶点集合
S⊆V - 顶点覆盖:
G
中的任意边都有至少一个端点属于
S 的顶点集合 S⊆V
定理:
- 对于不存在独立点的图, |最大匹配数|+|最小边覆盖|=|V|
- |最大独立集|+|最小顶点覆盖|=|V|
- 对于二分图, |最大匹配|=|最小顶点覆盖|
不严谨的理解:
一:
可以想象,最小边覆盖可以通过最大匹配加边来完成,但是要加多少条边呢?
假设图
G
的最大匹配为
由此可知,图G的最小边覆盖为:
|F|=|M|+|V|−2×|M|=|V|−|M|
移项可得:
|F|+|M|=|V|
关于为什么不能有孤立的点呢,因为这些孤立点一条边都没有,最后 |V|>|F|+|M|
二:
可以这样理解,现在图G要删除一些点,构造最小顶点覆盖,要删除哪些点呢?
一个思路是删除一组两两独立的点,因为这样删除点,不会导致一条边的两个端点都被删去。如果一条边的两个端点都被删去了,那么删去的点也就不是互相独立的了。这样要构造最小的顶点覆盖,就要尽量多的删去两两独立的点,那么就是 V <script type="math/tex" id="MathJax-Element-1516">V</script>删去最大独立集了。