목록UnionFind (1)
코딩딩딩
(python) 유니온-파인드(Union-Find) 알고리즘
1. 개념 유니온-파인드 알고리즘은 주로 그래프 문제에 적용하며 노드들을 특정 집합으로 나눌 때 사용한다. 그래서 같은 집합에 속한 노드들을 확인할 수 있다. 2. 알고리즘 구현 2-1. 부모 노드 배열 초기화 노드 번호에 대응하도록 초기 부모 노드를 자신의 노드 번호 값으로 초기화한다. 1번 노드 -> 1 2번 노드 -> 2 3번 노드 -> 3 ... 이 배열은 각 노드별로 부모 노드 번호를 보관하며 노드별로 결합 여부를 알 수 있다. parent = [i for i in range(n + 1)] #parent = [0, 1, 2, ..., n] 2-2. find 알고리즘 find 알고리즘은 특정 노드의 부모노드를 찾을 때까지 재귀적으로 호출이 되는 구조이다. def find(x): if parent[..
알고리즘
2023. 1. 13. 00:00