Heap 힙은 자료구조의 일종으로 트리 형식을 하고 있다(Complete Binary Tree). 트리에서 가장 작은 원소를 최상위 루트에 두게 한다. 순서를 가진 큐나 리스트의 가장 작은 원소에 빠르게 접근해야 하는 경우에 유용하다. 우선 순위 큐(Priority Queue)를 위해 만들어진 자료구조다. 각 노드는 자신의 자식보다 작으므로 원소들을 순서대로 위치시키고 싶을 때 가장 유용한 방법은 아니다. 힙 트리에서는 중복값을 허용한다. 배열에 트리의 값들을 넣어줄 때, 0 번째는 건너뛰고 1 번 index 부터 루트노드가 시작된다. (= 노드의 고유번호 값과 배열의 index 를 일치시켜 혼동을 줄인다.) 부모노드와 자식노드를 찾기 쉽다. 왼쪽 자식 노드의 인덱스 = (부모 인덱스) * 2 오른쪽 자..