힙(Heap) 데이터에서 최대값과 최소값을 빠르게 찾기 위해 고안된 완전 이진 트리(Complete Binary Tree) 완전 이진 트리: 노드를 삽입할 때 최하단 왼쪽 노드부터 차례대로 삽입하는 트리 배열에 데이터를 넣고, 최대값과 최소값을 찾으려면 O(n)의 시간복잡도 소요, 이에 반해 힙은 O(logn) 소요 우선순위 큐와 같이 최대값 또는 최소값을 빠르게 찾아야 하는 자료구조 및 알고리즘 구현 등에 활용 힙 구조 최대값을 구하기 위한 구조(최대 힙, Max Heap)와 최소값을 구하기 위한 구조(최소 힙, Min Heap)로 분류 할 수 있음 힙의 두 가지 조건 각 노드의 값이 최대 힙의 경우 해당 노드의 자식 노드가 가진 값보다 크거나 같고, 최소 힙의 경우 작거나 같아야 함 완전 이진 트리 ..