자료들 사이의 계층적 관계(Hierarchical Relationship)를 나타내는데 사용하는 비선형 자료구조
트리의 구성요소(용어)
- 노드(Node): 트리를 구성하고 있는 각각의 요소
- 간선(Edge): 트리를 구성하기 위해 노드와 노드를 연결하는 선
- 깊이(Depth): 루트 노드에서 해당 노드까지 도달하는 데 사용하는 간선의 개수로, 루트 노드의 깊이는 0
- 레벨(Level): 노드의 깊이+1
- 노드의 분지 수, 노드의 차수(Degree): 노드의 자식 수
- 트리의 분지 수, 트리의 차수(Degree of tree): 해당 트리 내 모든 노드의 분지 수 중 최댓값
- 높이(Height): 루트 노드에서 해당 노드까지 도달하는데 지나간 정점의 개수. 노드 중 가장 높이가 높은 노드의 높이를 트리의 높이라고 함
- 루트 노드(Root Node): 트리 구조에서 최상위에 있는 노드
- 단말 노드(Terminal Node, Leaf Node): 하위에 다른 노드가 연결되어 있지 않은 노드
- 내부 노드, 비단말 노드(Internal Node): 단말 노드를 제외한 모든 노드로 루트 노드를 포함
- 부모 노드(Parent Node): 부모 자식 관계에서 상위 계층에 있는 노드로, 상위 계층에 있을수록 노드의 깊이와 레벨이 낮음
- 자식 노드(Child Node): 부모 자식 관계에서 하위 계층에 있는 노드
- 형제 노드: 부모가 동일한 노드
- 조상 노드: 한 노드의 부모노드부터 루트노드까지 가는 경로에 존재하는 모든 노드를 해당 노드의 조상 노드라 함
- 후손 노드: 한 노드를 루트로 하는 서브트리에 있는 모든 노드를 해당 노드의 후손 노드라 함
무향 연결 그래프 G의 부분 그래프이고, G의 모든 정점을 포함하는 트리인 그래프
트리의 분지 수가 2 이하인 트리. 루트 노드를 중심으로 두 개의 서브 트리(이진 트리)로 나뉨
i/2
i*2
i*2+1
모든 노드의 차수가 0 또는 2인 이진 트리
정 이진 트리에서 모든 단말 노드의 깊이가 같은 이진 트리
마지막 레벨은 노드가 왼쪽에 몰려 있고 마지막 레벨을 제외하면 포화 이진 트리 구조를 띄고 있는 이진 트리
연결리스트처럼 한 줄로 연결 되어 있는 형태의 이진 트리