[算法] 并查集

一、并查集

  并查集(Union/Find)是一种树形的数据结构,用于处理一些不相交集合(Disjoint Sets)的合并及查询问题。常常在使用中以森林来表示。

二、使用场景

  1. 某个元素和另一个元素是否属于一个集合:只要看find(x)和find(y)是否返回同一个代表即可。
  2. 判断无向图的连通分量个数。

三、并查集主要操作

  1. 初始化:把每个点所在的集合初始化为自身。
  2. 查找(Find):查找元素所在的集合的根节点。
  3. 合并(Union):将两个元素所在的集合合并为一个集合。
  4. 集:合并后,采用压缩路径算法更新点的Father节点。
原文地址:https://www.cnblogs.com/yfzhou/p/9624362.html