https://helloinyong.tistory.com/296
트리 : 노드들의 집합
서브 트리
간선(edge) : 노드와 노드를 연결하는 선
노드의 차수(degree) : 노드의 자녀 노드 수
left child, right child
루트 노드, 부모 노드, 자녀 노드, 형제 노드, 리프 노드
inorder traversal (중위 순회): 재귀로 왼쪽 -> 현재 노드 출력 -> 재귀로 오른쪽
preorder traversal (전위 순회): 현재 노드 출력 -> 재귀로 왼쪽 -> 재귀로 오른쪽
postorder traversal (후위 순회): 재귀로 오른쪽 -> 현재 노드 출력 -> 재귀로 왼쪽
이진(binary) 트리 : 각 노드의 차수가 최대 두개인 트리
이진 탐색 트리: 모든 노드의 왼쪽 서브 트리는 해당 노드의 값보다 작아야 하고, 오른쪽 서브 트리는 해당 노드의 값보다 커야한다.
완전 이진 트리 : 마지막 레벨을 제외한 모든 레벨에서 노드가 빠짐없이 채워져 있고, 마지막 레벨은 왼쪽부터 빠짐없이 노드가 채워져있는 트리
균형 이진 트리: 모든 노드에서 왼쪽 서브 트리와 오른쪽 서브 트리의 높이 차이가 최대 1인 트리
