자료구조 11화를 듣고 배운내용
KEYWORDS
- 이진 탐색 트리(Binary Search Tree): 빠르게 탐색할 수 있는 이진트리
- Splay 트리: 자주 탐색하는 키를 가진 노드를 루트 가깝게 위치하게 구성한 이진 탐색 트리
- AVL 트리: 노드의 왼쪽 서브트리 높이와 오른쪽 서브트리 높이가 최대 1만큼 차이 나는 조건을 만족하는 트리
- 트리의 높이: 노드가 가질 수 있는 가장 높은 레벨에 1을 더한 값, 루트에서 잎까지 가장 긴 경로 길이
- 트리의 무게: 트리에 속한 잎 노드의 개수
- 무게가 균형 잡힌 트리: 각 노드의 양쪽 서브트리 무게가 균형을 유지하는 트리
이진 탐색 트리(BS Tree)
탐색에 최적화된 이진 트리
노드를 삽입, 삭제하는 문제가 가장 효과적인 이진 트리
노드 삽입
루트부터 키 값은 비교해서 왼쪽/오른쪽을 정하며 내려가서 삽입
이진 트리가 이진 탐색 트리가 될 조건
- 왼쪽 자식 노드 < 부모
- 오른쪽 자식 노드 > 부모
스플레이(SPLAY) 트리
이진 탐색 트리를 변형한 트리
자주 탐색하는 키를 가진 노드를 루트에 가깝에 올린다.
비교 횟수 줄이자는 접근
Splay 연산을 이용해서 사용하려는 노드로 트리를 재구성한다
균형 트리
균형을 맞춰서 탐색을 더 효율적으로 만든 트리
=> BB트리, AVL 트리
균형을 잡으면 비교 횟수가 줄어든다
'Computer Science > Data Structure :: 자료구조' 카테고리의 다른 글
자료구조란? (0) | 2021.11.21 |
---|---|
자료구조 강의 12화 :: m원 탐색 트리, B 트리, B* 트리, B+ 트리 (0) | 2021.10.18 |
자료구조 강의 10화 :: 선택트리, 승자트리, 패자트리, 숲 (0) | 2021.10.11 |
자료구조 강의 9화 :: 힢(Heap), 우선순위 큐 구현 최강자 (0) | 2021.10.11 |
자료구조 강의 8화 :: 스레드 트리 (0) | 2021.09.27 |