在这之前说一下由于这些大部分也都是在最大匹配基础上更改的,所以对于二分匹配的最大匹有不了解可以先看最大匹配
链接地址:https://blog.csdn.net/weixin_44606952/article/details/99647715
对于各类定理的模板我会在以后遇到的时候把模板解题样例链接依次发到对应含义解说的下面;
最大独立集:它的含义就是选出最多的点,但是所选出的任意两点之间均不能相互连接;
最小点覆盖数=最大匹配数;
最大独立集=顶点数-最小点覆盖数;
最大独立集模板代码:(实际就是按照定义上面的定义写的)
#include<stdio.h>
#include<string.h>
int e[205][205],book[205];
int match[205];
int n,m;
int dfs(int u)
{
for(int i=1; i<=m; ++i)
{
if(e[u][i]==1&&book[i]==0)
{
book[i]=1;
if(match[i]==0||dfs(match[i]))
{
match[i]=u;
printf("%d %d\n", u,i);
return 1;
}
}
}
return 0;
}
int main()
{
int a,b,k,t=0;
while(scanf("%d %d %d",&n,&m,&k),n!=0&&m!=0&&k!=0)
{
memset(e,0,sizeof(e));
int sum=0;
for(int i=1; i<=k; i++)
{
scanf("%d %d",&a,&b);
e[a][b]=1;
}
memset(match,0,sizeof(match));
for(int i=1; i<=n; i++)
{
memset(book,0,sizeof(book));
if(dfs(i))
sum++;
}
printf("Case %d: %d\n",++t,n+m-sum);
}
return 0;
}
最小路径路径覆盖:相交表示的意思是每一条路所经过的顶点都不相同即一个顶点不能出现在多条路径中(另外单个顶点也可以作为一条路径只是路径的长度为0罢了)
例如这样一张图:
要是不相交路径的话就分为三条路径覆盖1->3->4;和2;5;
要是相交路径顾名思义一个顶点可以在多条路径中出现所以有两条路径1->3->4和2->3->5;
最小路径覆盖=顶点数-最大匹配数;
下面是不相交路径覆盖的代码(与上一个代码来说基本无差)
输入样例 :
3 3 4
1 1
1 2
1 3
2 3
输出样例:
4
#include<stdio.h>
#include<string.h>
int e[205][205],book[205];
int match[205];
int n,m;
int dfs(int u)
{
for(int i=1; i<=m; ++i)
{
if(e[u][i]==1&&book[i]==0)
{
book[i]=1;
if(match[i]==0||dfs(match[i]))
{
match[i]=u;
return 1;
}
}
}
return 0;
}
int main()
{
int a,b,k,t=0;
while(scanf("%d %d %d",&n,&m,&k),n!=0&&m!=0&&k!=0)
{
memset(e,0,sizeof(e));
int sum=0;
for(int i=1; i<=k; i++)
{
scanf("%d %d",&a,&b);
e[a][b]=1;
}
memset(match,0,sizeof(match));
for(int i=1; i<=n; i++)
{
memset(book,0,sizeof(book));
if(dfs(i))
sum++;
}
printf("Case %d: %d\n",++t,n+m-sum);
}
return 0;
}
二分图的最大团:
对于一般图来说,团是一个顶点集合,且由该顶点集合诱导的子图是一个完全图,简单说,就是选出一些顶点,这些顶点两两之间都有边。最大团就是使得选出的这个顶点集合最大。
方法一:
我们默认为左边的所有点之间都有边,右边的所有顶点之间都有边。那么,实际上,我们是要在左边找到一个顶点子集X,在右边找到一个顶点子集Y,使得X中每个顶点和Y中每个顶点之间都有边。
方法二:
二分图的最大团=补图的最大独立集。
补图的定义是:对于二分图中左边一点x和右边一点y,若x和y之间有边,那么在补图中没有,否则有。
这个方法很好理解,因为最大独立集是两两不相连,所以最大独立集的补图两两相连。
下面一条链接是在二分图最大团的一道例题:
也可以说是最大团的一种解题思路吧:
https://blog.csdn.net/weixin_44606952/article/details/99677592