引入
并查集实质上是一个森林,森林中的每一颗树都可以看作是一个集合,构成树的节点就是集合中的元素。(如图所示)
![](https://i-blog.csdnimg.cn/blog_migrate/391813430961ec11c84f64022d376f8c.png)
并查集支持两种操作方式:
1)查找:即Find函数,查找元素对应集合的树根节点,用于判断两个元素是否同属于一个集合。
2)合并:即Union函数,合并两个元素对应集合的树。
C++定义
在C++中,我们用数组来模拟一个并查集的从属关系。
int f[10000];
f[1]=2;
初始化
在对并查集进行任何操作之前,每个元素对应的集合都应只有自己一个元素,即一颗只有一个节点的树。
int f[10000];
for(int i=1