@Codewzs
2019-04-14T08:28:44.000000Z
字数 282
阅读 761
C++模板
struct bcj{int father[100010];void start(int n)//初始化{for(int i=0;i<=n;i++)father[i]=i;}int find(int x)//寻找父亲{if(father[x]!=x)father[x]=find(father[x]);return father[x];}void unionn(int x,int y)//合并{x=find(x);y=find(y);if(x!=y)father[y]=x;}};
使用方法:
bcj uf;uf.start(...);uf.unionn(...,...);