힙(Heap) 최솟값, 최댓값을 찾아내는 연산을 빠르게 하기 위해 만들어진 완전이진트리를 기본으로 한 자료구조이다. 완전이진트리는 마지막레벨을 제외하곤 노드들이 다 채워져 있고, 마지막레벨은 왼쪽부터 채워진 트리이다. 최소 힙: 부모노드의 키(key)값이 자식노드의 키값보다 항상 작다. 최대 힙: 부모노드의 키값이 자식노드의 키값보다 항상 크다. 위의 완전이진트리를 배열으로 나타내면 다음과 같다. 부모와 자식 index를 구하기 위해 index는 0이 아닌 1부터 값을 넣어준다. index 0 1 2 3 4 5 6 7 8 9 값 - 1 5 2 16 19 36 7 25 42 루트 노드 : index = 1 부모 노드 : index = index / 2 왼쪽 자식 노드 : index * 2 오른쪽 자식 노드..