匹配:
给定一个二分图,在G的一个子图G’中,如果G’的边集中的任意两条边都不依附于同一个顶点,则称G’的边集为G的一个匹配
最大匹配:
在所有的匹配中,边数最多的那个匹配就是二分图的最大匹配了
最小支配集:
从V中取尽量少的 点组成一个集合,使得V中剩余的点都与取出来的点有变相连。
顶点覆盖:
在顶点集合中,选取一部分顶点,这些顶点能够把所有的边都覆盖了。这些点就是顶点覆盖集
最小顶点覆盖:
在所有的顶点覆盖集中,顶点数最小的那个叫最小顶点集合。
独立集:
在所有的顶点中选取一些顶点,这些顶点两两之间没有连线,这些点就叫独立集
最大独立点集:
在左右的独立集中,顶点数最多的那个集合。二分图的最大独立点集是指从二分图G=(X,Y;E)选取一些点v*属于{X,Y},使得点集v*中任意两点之间没有通过边连接。而二分图的最大独立点集模型就是求取max|v*|。
最小点权覆盖:
如果覆盖每个顶点需要付出不同的代价,或称为点权(或为容量),那么问题可以描述成,在保证覆盖所有边的情况下,如何使得权和最小。
二分图的最小点权覆盖算法:建立一个超级源点s,向X部每个点连边,容量为X部每个点的点权;建立一个汇点t,从Y部每个点向汇点t连边,容量为Y部每个点的点权,把二分图中的边看成是有向的,u到v连接,容量为inf。则任意一条从s到t的路径,一定具有s->u->v->t。的形式。
路径覆盖:
在图中找一些路径,这些路径覆盖图中所有的顶点,每个顶点都只与一条路径相关联。
最小路径覆盖:
在所有的路径覆盖中,路径个数最小的就是最小路径覆盖了。
顶点集C被称为无向图 G=(V,E) 的团,如果C是顶点集V的子集(C⊆V),而且任意两个C中的顶点都有边连接。另一种等价的说法是,由C诱导的子图是完全图 (有时也用“团”来指这样的子图)。
极大团是指增加任一顶点都不再符合团定义的团,也就是说,极大团不能被任何一个更大的团所包含。
最大团是一个图中顶点数最多的团。图G的团数(clique number)ω(G) 是指G中最大团的顶点数。图G的边团覆盖数(edge clique cover number)是指覆盖G中所有的边所需要的最少的团的数目。图G的二分维数(bipartite dimension)是指覆盖G中所有边所需要的最少的二分团的数目,其中二分团(biclique)就是完全二分子图 。而分团覆盖问题 (Clique cover problem)所关心的是用最少的团去覆盖G中所有的顶点。
割点:是无向连通图中一个顶点v, 如果删除它以及它关联的边后,得到的新图至少包含两个连通分支。
桥:无向连通图中的一条边,如果删除它,得到的新图包含两个连通分量。
双连通图:不含割点的无向连通图。
双连通分支:无向连通图的最大双连通子图。
最小点割集:无向(有向)图G中,给定源点s和终点t,至少要删去多少个点(具体一点,删哪些点),使得s和t不连通
解法:一般最小点割转化到最小边割上,将原图中的点v拆成v'和v'',且w(v‘,v'')=1。对于原图中的有向边(u,v),则有w(u'',v')=INF;若是无向边,则还要加上边:w(v',u'')=INF。然后求以s''为源点,t'为汇点的最大流。maxflow即为最少需要删的点数,割边集对应了具体删的点的一组解。
最小顶点覆盖=最大匹配
最小路径覆盖=节点数-其对应二分图的最大匹配数
最大独立集 = 顶点个数 – 最大匹配(最小顶点覆盖)