1. 트리 구조
- 트리 : Node, Branch로 이루어져있다.
- 이진 트리 (Binary Tree)는 탐색(검색) 알고리즘 구현에서 많이 쓰인다.
2. 트리 용어
- Node: 트리에서 데이터를 저장하는 기본 요소 (데이터와 다른 연결된 노드에 대한 Branch 정보 포함)
- Root Node: 트리 맨 위에 있는 노드
- Level: 최상위 노드를 Level 0으로 하였을 때, 하위 Branch로 연결된 노드의 깊이를 나타냄
- Parent Node: 어떤 노드의 다음 레벨에 연결된 노드
- Child Node: 어떤 노드의 상위 레벨에 연결된 노드
- Leaf Node (Terminal Node): Child Node가 하나도 없는 노드
- Sibling (Brother Node): 동일한 Parent Node를 가진 노드
- Depth: 트리에서 Node가 가질 수 있는 최대 Level
![tree](/assets/images/2023/02/21/tree.png)
3. 이진트리, 이진탐색트리
- 이진트리 : 브랜치가 최대 2개
- 이진탐색트리 : 이진트리 + parent node보다 작은 값은 child node를 만들 때 왼쪽, 큰 값은 오른쪽
![binaryTree](/assets/images/2023/02/21/tree.gif)
Comments