并查集

Posted DGSX

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了并查集相关的知识,希望对你有一定的参考价值。

 

将许多独立的元素通过某种方式相互合并为若干个集合的方法即为并查集。

 

int set[N];//并查集集合 

for(i=0;i<=N;i++) set[i] = i;//并查集初始化,每个元素自为一个集合

int find(int i){//并查集查找,某个元素为根代表这个集合
    int r = i;
    while(r!=set[r])
        r = set[r];
    return r;
} 

void join(int i,int j){//并查集合并
    int b=find(i), c=find(j);
    if(b!=c)
        set[b] = c;
}

 

以上是关于并查集的主要内容,如果未能解决你的问题,请参考以下文章

想要学会并查集吗?看我四十行代码实现它

树--12---并查集

笔记并查集---无向图处理代码模板及类型题

并查集

力扣 每日一题 886. 可能的二分法难度:中等,rating: 1794(并查集 / 拆点优化的扩展域并查集)

并查集