티스토리 뷰

트리

  • 비선형 구조 (원소들 간에 1:n 관계를 가지는 것)
    • 선형구조는 원소들 간에 1:1의 관계를 가지는 것임. 대표적으로 linkedList, arrayList가 있음
  • 원소들 간에 계층관계를 가짐
  • 상위원소에서 하위 원소로 내려가면서 확장되는 트리 모양의 구조

 

[트리의 용어]

  • 노드: 트리의 원소
    • 트리의 원소: A,B,C,D,E,F,G,H,I,J,K,L
  • 간선: 노드를 연결하는 선으로 부모 노드와 자식 노드를 연결
  • 루트 노드: 트리의 시작 노드
    • 루트노드: A
  • 형제노드: 같은 부모노드를 가진 노드들
    • 형제 노드: B,C,D
  • 조상노드: 간선을 따라 루트 노드까지 이르는 경로에 있는 모든 노드들
    • J의 조상 노드들: F,B,A
  • 서브트리: 부모노드와 연결된 간선을 끊었을 때 생성되는 트리
    • A의 서브 트리: B트리, C트리, D 트리
  • 자손 노드: 서브 트리에 있는 하위 레벨의 노드들
    • B의 자손 노드: E,F,J,K

  • 차수(degree)
    • 노드의 차수: 노드에 연결된 자식 노드의 수(B의 차수= 2, F의 차수=1)
    • 트리의 차수: 트리에 있는 노드의 차수 중 가장 큰 값(트리 A의 차수=3)
    • 단말 노드(리프노드): 차수가 0인 노드, 자식 노드가 없는 노드
  • 높이(레벨)
    • 노드의 높이: 루트노드에서 노드에 이르는 간선의 수. 노드의 레벨(B의 높이=1, J의 높이=3)
    • 트리의 높이: 트리에 있는 노드의 높이 중 가장 큰 값. 최대 레벨(트리 A의 높이=3)

 


이진트리

이진트리는 모든 노드들이 2개의 서브트리를 갖는 특별한 형태의 트리를 말한다.

각 노드가 자식 노드를 최대 2개까지만 가질 수 있는 트리이다.

  • 왼쪽 자식 노드(left child node)
  • 오른쪽 자식 노드(right child node)

[이진트리의 특징]

  • 이진트리의 최대 노드 수는 레벨 i에서 \(2^i\)개를 가짐
  • 높이가 h인 이진 트리가 가지는 최소 노드 개수는 \(h+1\)이고 최대 개수는 \(2^{h+1}-1\)이다.

 

[이진트리의 종류]

이진트리는 포화 이진 트리(Full Binary Tree), 완전 이진 트리(Complete Binary Tree), 편향 이진 트리(Skewed Binary Tree)가 있다.

 

1. 포화 이진 트리(Full Binary Tree)

  • 모든 레벨에서 노드가 2개씩 있는 이진 트리
  • 높이가 h일때 \(2^{h+1}-1\)개 노드가 있음
  • 위에 그래프에서 높이=3, 노드 개수=\(2^4-1 = 15\) 

2. 완전 이진 트리(Complete Binary Tree)

  • 마지막 레벨의 노드 빼고 나머지 노드들은 전부 빈자리가 없는 이진 트리
  • 높이가 h일 때 노드의 개수 = \( 2^h \le n \le 2^{h+1}-1 \)
  • 예를 들어 레벨이 3인 그래프에서 가질 수 있는 노드 개수: \(2^3  \le n \le 2^4-1\)

3. 편향 이진 트리(Skewed Binary Tree)

  • 높이 h에 대해 한쪽 노드 방향에만 자식 노드를 가지는 이진 트리
  • 높이 h일 때 노드 개수는 h+1을 가짐
    • 왼쪽 편향 이진 트리
    • 오른쪽 편향 이진 트리

'Data Structure' 카테고리의 다른 글

[자료구조] 트리, 이진트리, 힙 - 2  (0) 2021.02.15
[CS 면접질문 대비] 그래프 및 자료 구조  (0) 2021.01.31
[자료구조] BFS  (0) 2021.01.31
[자료구조] DFS  (0) 2021.01.30
[자료구조] 그래프(Graph) 개념  (1) 2021.01.30
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함