저장소 logo 저장소

1. 이진 탐색 트리(BST)의 정의 및 조건


2. 주요 연산 및 시간 복잡도

트리의 균형이 잘 잡혀 있는 경우, 트리의 높이는 log n이 되며 효율적인 탐색이 가능.

연산 (Operation) 평균 시간 복잡도 최악의 경우 (Worst Case)
검색 (Search) O(log n) O(n)
저장 (Insert) O(log n) O(n)
삭제 (Delete) O(log n) O(n)

3. 이진 트리(Binary Tree)와의 차이점 및 최악의 경우


4. 자가 균형 이진 탐색 트리 (Self-Balancing BST)

최악의 경우를 방지하기 위해 트리의 균형을 유지하며 높이를 가능한 낮게 유지하는 알고리즘.


핵심 정리


추가 정리

Q. BST를 효과적으로 설명하려면?

  • 단순한 정의보다 데이터가 저장될 때 어떤 규칙에 따라 노드가 배치되는지를 그림으로 설명하는 것이 좋음.
  • 특히 정렬된 데이터가 순차적으로 들어올 때 발생하는 ‘치우친 트리(Worst Case)’ 상황과 이를 방지하는 자가 균형 트리의 필요성을 연관 짓는 것이 핵심.

Q. BST의 높이가 왜 O(log n)인가?

  • 균형 잡힌 이진 트리에서 각 층을 내려갈 때마다 탐색 범위가 절반씩 줄어들기 때문.

« Queue vs Priority Queue
Hash Table »