October 10, 2021

서로소 집합


서로소 집합(Disjoint Set)이란 공통 원소가 없는 두 집합을 의미한다.

서로소 집합 자료구조

서로소 집합 자료구조 동작 과정

여러 개의 합치기 연산이 주어졌을 때 서로소 집합 자료구조의 동작과정은 다음과 같습니다.

  1. Union 연산을 확인하여, 서로 연결된 두 노드 A, B를 확인한다.
    1. A와 B의 루트 노드 A', B'을 각각 찾는다.
    2. A'을 B'의 부모 노드로 설정한다.
  2. 모든 Union 연산을 처리할 때까지 1번의 과정을 반복한다.

기본적인 구현 방법의 문제점

경로 압축

서로소 집합을 활용한 사이클 판별