/*摘自计蒜客:http://www.jisuanke.com/course/35/7055
*实现并查集类DisjointSet的基本操作
*/
#include <iostream>
using namespace std;class DisjointSet
{
private:
int * father;
public:
//初始化就是将每个元素都建立一个只包含该元素的集合,即每个元素都是自己所在集合的代表元素。
DisjointSet(int size) {father = new int[size];
for (int i=0; i<size; ++i) {
father[i] = i;//代表元素特点:代表元素的父结点就是它自己
}
}
~DisjointSet() {
delete[] father;
}
};
int main() {
DisjointSet dsu(100);
return 0;
}