并查集
建立
f[i]=i;
寻找根节点(路径压缩)
int find(int x){
if (f[x]==x) return x;
else return f[x]=find(f[x]);
}
合并
f[find(x)]=find(y);
并查集
建立
f[i]=i;
寻找根节点(路径压缩)
int find(int x){
if (f[x]==x) return x;
else return f[x]=find(f[x]);
}
合并
f[find(x)]=find(y);