标签:ini find void max n个元素 int turn return rank
int par[maxn]//父亲 int rank[maxn]//树的高度 //初始化n个元素 void init(int n) { for(int i=0;i<n;i++) { par[i]=i; rank[i]=0; } } //查询树的根 int find(int x) { if(par[x]==x) { return x; } else { return par[x]=find(par[x]); } } //合并x,y所属的集合 void unite(int x,int y) { x=find(x); y=find(y); if(x==y) return; if(rank[x]<rank[y]) { par[x]=y; } else { par[y]=x; if(rank[x]==rank[y]) rank[x]++; } } //判断x,y是否在同一个集合 bool same(int x,int y) { return find(x)==find(y); }
标签:ini find void max n个元素 int turn return rank
原文地址:http://www.cnblogs.com/superxuezhazha/p/6360330.html