标签:oid return == void pre 一个人 ret union 出现
并查集
int pre[100005],temp;//num是保存被指向的数目
int find(int x)
{
if(pre[x]==x) return x;
return pre[x]=find(pre[x]);
}
void Union(int x,int y)// 第一种是如果出现的两个点的祖宗是同一个人,那么说明之前已经有成一串了,在连就会变成环
{
int a=find(x),b=find(y);
if(a==b)
{
temp=1;//temp判断会不会有环
return ;
}
pre[b]=a;
}
标签:oid return == void pre 一个人 ret union 出现
原文地址:https://www.cnblogs.com/wzl19981116/p/9501126.html