[Heap 힙] - JavaScript로 heap 구현하기
·
CS/자료구조, 알고리즘
프로그래머스에서 힙 문제를 JS로 푸는데 JS는 힙을 직접 구현해야 된다는 것을 알게 되었다. 그래서 개념과 함께 JS로 힙을 구현해 볼 것이다. Heap 힙이란?힙은 완전 이진 트리 기반의 자료구조이다.주로 "최댓값"이나 "최솟값"을 빠르게 찾아내기 위해 사용된다. 여기서 이진 트리란 자식 노드가 2개 이하인 트리를 말한다. 힙의 조건1. 완전 이진 트리 노드의 수가 2^k-1 ( 포화 이진 트리) 이 되지 않아 맨 아래 레벨을 모두 채울 수 없을 때 왼쪽부터 차례로 채운 것.2. 힙 특성 최대 힙 : 모든 노드는 값을 갖고, 자식 노드(들) 값보다 크거나 같다. 우선순위가 가장 큰 원소가 루트에 자리하게 된다. 최소 힙 : 반대로 부모 노드가 자식 노드보다 작거나 같은 힙 자바스크..