
[자료구조] AVL트리란?
·
공부/기타
이진탐색트리의 이상적인 모습은 아래와 같다. 이를 균형이진트리라고 한다. 부모 노드의 왼쪽 자식은 부모보다 값이 작고 오른쪽 자식은 부모보다 값이 크다. 이 규칙은 깨지지 않는다. 그러나, 아래와 같은 불균형이진트리도 이진탐색트리의 일종이다. 한쪽으로 치우쳐진 모양의 이진트리를 경사이진트리라고 한다. 경사이진트리는 삽입, 삭제, 탐색 등 모든 경우에서 최악의 시간 복잡도를 갖기 때문에 불균형이진트리를 균형이진트리로 만들어주는 방법이 고안됐는데 그중 하나가 ✅AVL트리이다. AVL트리에서 모든 노드의 양쪽 서브트리의 높이 차는 -1, 0, 1 중 하나다. 이때 BF가 노드 양쪽 서브트리의 높이차를 말한다. 이때 그래프가 위와 같은 모양이 되면 노드 20과 30의 입장에서 BF 값이 2가 된다. 즉, AVL..