Table of Contents
균형 잡힌 이진 수목은 분류된 자료를 유지하고 검색, 삽입, 삭제와 같은 효율적인 작업을 보장합니다. 두 가지 일반적인 유형은 AVL 나무와 레드-블랙 나무이며, 각각 고유의 균형을 유지하는 원칙으로 성능 최적화.
AVL 트리
AVL 나무는 왼쪽과 오른쪽의 하위 트리 사이의 높이가 가장 하나에 달려있는 바이너리 검색 나무를 자체 균형 잡힌다. 이 엄격한 균형은 빠른 검색 시간을 보장하지만 삽입 및 탈레가 균형을 유지하기 위해 더 많은 회전을 필요로한다.
노드가 작동 후 불균형이 발생하면, 회전은 AVL 속성을 복원하기 위해 수행됩니다. 이 회전은 높이 차이 제약을 유지하는 데 도움이되는 단일 및 이중 회전을 포함합니다.
레드 블랙 트리
Red-Black 나무는 각 노드에 색상 (빨간색 또는 검정색)을 할당하는 자력화 바이너리 검색 트리의 유형입니다. 색칠 규칙은 나무가 약 균형을 유지하며 뿌리에서 잎까지 아무 경로도 다른 사람보다 두 배 이상 인 것을 보증합니다.
주요 속성은 다음과 같습니다 :
- 모든 노드는 빨간색 또는 검정색입니다.
- 뿌리는 항상 검은 색입니다.
- Red 노드는 붉은 아이들이 없습니다.
- 노드에서 그 후손 잎까지 모든 경로는 검은 노드의 동일한 숫자를 포함합니다.
이 속성은 붉은 검은 나무를 사용하여 삽입 및 탈수 효율을 유지하면서 색상 및 회전을 통해 균형을 유지 할 수 있습니다.
AVL 및 Red-Black Trees의 비교
AVL과 Red-Black 나무는 최적의 성능을 위해 균형을 유지하는 것을 목표로합니다. AVL 나무는 더 엄격하게 균형 잡힌 경향이 있지만 업데이트 중 더 많은 회전이 필요할 수 있습니다. Red-Black 나무는 더 엄격한이며, 더 빠른 삽입과 작은 느리게 룩업으로 탈취를 제공합니다.