Tree란? Tree란 노드와 브랜치를 이용하는 비선형의 자료구조로, 계층적인 구조를 표현하는데 사용됩니다. 예로 컴퓨터에서의 디렉토리 경로도 Tree 구조를 가지고 있습니다. 위 그림의 A, B 등을 각각 노드라 칭하고, 상위 계층의 노드가 없는 A 노드를 루트 노드라 합니다. A-B / B-E와 같이 수직 관계를 가지는 노드를 각각 부모 노드, 자식 노드라 하며 같은 부모를 가지는 B-C / E-F 등을 형제 노드라 부릅니다. 각 노드를 연결하는 선을 브랜치(혹은 엣지)라고 부릅니다. Tree에서 노드 Depth는 루트에서 해당 노드까지 거치는 edge의 수를 의미합니다. 노드 Level은 특정 Depth를 가지는 집합 (Level 1 = {B, C})을 의미합니다. 노드 Degree는 자식 노드의 ..