图论——二分图

二分图: 
二分图又称二部图,是图论中的一种特殊模型。设G=(V,E)是一个无向图,如果顶点V可以分割为两个互不相交的子集(A,B),并且图中的每条边(i,j)所关联的两个顶点i和j分别属于这两个不同的顶点集(i in A, j in B), 则称图G是二分图。 


匹配: 
给定一个二分图,在G的一个子图G’中,如果G’的边集中的任意两条边都不依附于同一个顶点,则称G’的边集为G的一个匹配 

最大匹配: 边数最多

顶点覆盖: 
在顶点集合中,选取一部分顶点,这些顶点能够把所有的边都覆盖了。这些点就是顶点覆盖集

最小顶点覆盖: 顶点数最小

边覆盖: 
在边集合中,选取一部分边,覆盖尽可能多的点

最小边覆盖: 边数最小

独立集: 
在所有的顶点中选取一些顶点,这些顶点两两之间没有连线,这些点就叫独立集 

最大独立集: 顶点最多

路径覆盖: 
在图中找一些路径,这些路径覆盖图中所有的顶点,每个顶点都只与一条路径相关联。 

最小路径覆盖: 路径个数最小

公式

最大团 = 补图的最大独立集

最大独立集 = 最小边覆盖 = V - 最大匹配

最小顶点覆盖 = 最大匹配数

套路模板

最小路径覆盖(不交叉)

在有向无环图上,假设已经求出最小路径覆盖是x,那么,在这x条路径上,一定有V-x条边。

那么显然使得边数最大,即可求得最小路径。

每一条路径上,v-1条边,不妨令每条边的起点代表这条边,问题转化为求有后继结点的顶点个数。

建图如下

注意事项:拆点后注意数据范围。

HIT训练赛:http://acm.hust.edu.cn/vjudge/contest/128794#overview

原文地址:https://www.cnblogs.com/HITLJR/p/5782110.html