并查集(Union-Find Set):
一种用于管理分组的数据结构。它具备两个操作:(1)查询元素a和元素b是否为同一组 (2) 将元素a和b合并为同一组。
注意:并查集不能将在同一组的元素拆分为两组。
int
find(
int
x)
{
return
p[x]==x? x:find(p[x]);
//x的父节点保存在p[x]中,如果没有父节点则p[x]=x。
}
并查集(Union-Find Set):
一种用于管理分组的数据结构。它具备两个操作:(1)查询元素a和元素b是否为同一组 (2) 将元素a和b合并为同一组。
注意:并查集不能将在同一组的元素拆分为两组。
int
find(
int
x)
{
return
p[x]==x? x:find(p[x]);
//x的父节点保存在p[x]中,如果没有父节点则p[x]=x。
}