ABOUT

성능과 운영 안정성을 함께 끌어올리는 개발자입니다.

92% Positional Error Reduction
79% p95 Latency Improvement
90%+ Long Tasks Reduction

2022.02 · 한국장학재단

우수 멘티

한국장학재단 사회 리더 대학생 멘토링 IT

2022.10 · 동작구청

우수 인재상

동작구청 우수 SW 인재

2025.05 · (주) 그랩

프로그래밍 우수상

(주) 그랩 우수 프로그램 개발

2025.05 · AWSKRUG

AWS한국사용자모임 발표

AI agent 스크립트 튜닝 관련 발표

ComputerScience

Development

Engineering

Trouble Shooting

GUESTBOOK

첫 마음부터
함께 나누는 온기

방명록 작성하러 가기

SUBSCRIBE

최신소식을
편하게 만나보세요.

트리 (Tree)

 
 

비선형 자료구조

 

정의

무엇을 저장하고 꺼내야 한다는 사고를 벗어나야 합니다.
스택이나 와 같은 선형 자료구조가 아닌 비선형 자료구조입니다.
계층적 관계라는 개념을 표현하는데 집중하는 자료구조입니다.

 

용어

트리에 사용되는 다양한 용어가 있습니다.

🧩 노드 (Node)

- 데이터를 저장하는 단위로, 트리를 구성하고 있는 각각의 요소입니다.

- 각 노드는 0개 이상의 자식을 가집니다.

 

🧩 간선 (Edge)

- 계층을 표현하는 선입니다.

- 부모 노드와 자식 노드를 연결합니다.

 

🧩 루트 (Root)

- 트리 구조에서 시작점이 되는 최상위 노드입니다.

- 루트에는 부모가 있지 않습니다.

 

🧩 리프 (Leaf)

- 자식이 없는 노드이며, 단말 노드라고 합니다.

- 하위에 다른 노드가 연결되어 있지 않습니다.

 

🧩 내부 (Internal)

- 단말 노드를 제외한 모든 노드이며, 비단말 노드라고 합니다.

- 루트 노드도 포함합니다.

 

🧩 높이 (Height)

- 루트에서 가장 깊은 리프까지의 거리를 루트 높이라고 합니다.

- 해당 노드에서 리프까지 가는 가장 긴 경로의 간선 수를 노드 높이라고 합니다.

 

🧩 서브 트리 (Height)

- 트리 안에 포함된 작은 트리입니다.

- 트리의 임의의 노드를 새로운 루트로 잡았을 때, 그 노드를 포함한 모든 하위 노드들이 이루는 트리입니다.

 

종류

트리에는 다양한 종류가 있습니다.
 

일반 트리 (General Tree)

트리 (Tree) 정의트리 자료구조의 가장 일반적인 형태입니다.가장 자유로운 트리 구조로, 자식의 수에 제한이 없어 각 노드가 0개 이상의 자식 노드를 가질 수 있습니다.트리 자료구조의 구조와

develop-enchantment.tistory.com

 

🌲 이진 트리 (Binary Tree)

- 계층을 표현하는 선입니다.

- 부모 노드와 자식 노드를 연결합니다.

 

🌲 이진 탐색 트리 (BST, Binary Search Tree)

- 트리 구조에서 시작점이 되는 최상위 노드입니다.

- 루트에는 부모가 있지 않습니다.

 

🌲 균형 이진 트리 (AVL, Red-Black)

- 자식이 없는 노드이며, 단말 노드라고 합니다.

- 하위에 다른 노드가 연결되어 있지 않습니다.

 

🌲 힙 (Heap)

- 단말 노드를 제외한 모든 노드이며, 비단말 노드라고 합니다.

- 루트 노드도 포함합니다.

 

🌲 트라이 (Trie)

- 루트에서 가장 깊은 리프까지의 거리를 루트 높이라고 합니다.

- 해당 노드에서 리프까지 가는 가장 긴 경로의 간선 수를 노드 높이라고 합니다.


 

728x90