并查集模板
void init(){for(int i=1;i<=maxx;i++)pre[i]=i;}//初始化 //注意如果序列内节点编号是大于n的,要初始化到最大,建议最开始初始化到最大 int Find(int x){return pre[x]==x?x:(pre[x]=Find(pre[x]));}//状态压缩+找最上面的祖先 void join(int x,int y){fx=Find(x);fy=Find(y);if(fx!=fy)pre[fx]=fy;}//加入合并
void init(){for(int i=1;i<=maxx;i++)pre[i]=i;}//初始化 //注意如果序列内节点编号是大于n的,要初始化到最大,建议最开始初始化到最大 int Find(int x){return pre[x]==x?x:(pre[x]=Find(pre[x]));}//状态压缩+找最上面的祖先 void join(int x,int y){fx=Find(x);fy=Find(y);if(fx!=fy)pre[fx]=fy;}//加入合并
相关推荐
接AI后端1对1辅导:agent了解下,有实操项目,对项目深入了解,传统后端要准备扎实,算法多刷刷,很重要。