Disjoint Set을 표현할 때 사용하는 알고리즘
※ Disjoint Set이란?
서로 중복되지 않는 부분 집합들로 나눠진 원소들에 대한 정보를 저장하고 조작하는 자료구조
= "서로소 집합 자료구조"
[출처] https://gmlwjd9405.github.io/2018/08/31/algorithm-union-find.html
int find(int x) { // 최상단 노드 찾기
if (parent[x] == x) return x;
else return parent[x] = find(parent[x]);
}
void Union(int a, int b) { // find 함수 이용해 경로 압축
parent[find(a)] = find(b);
}