[자료구조] 힙(Heap)의 개념 및 구현 (JavaScript)


[자료구조] 힙(Heap)의 개념 및 구현 (JavaScript)

1.힙(Heap)이란? 힙(Heap)이란 우선순위 큐(Priority Queue)를 위해 만들어진 자료구조이다. 완전 이진트리의 일종으로, 최대값과 최소값을 빠르게 찾기 위해 만들어진 자료구조이다. * 우선순위 큐는 말 그대로 큐에 우선순위 개념을 도입한 큐이다. 우선순위가 높은 데이터가 먼저 나가는 자료구조이다. 힙은 두 종류로 나눠진다. 최소 힙 : 부모 노드의 키 값이 자식 노드의 키 값보다 작은 힙 최대 힙 : 부모 노드의 키 값이 자식 노드의 키 값보다 큰 힙 여기서 키 값의 대소관계는 부모와 자식관계만 성립하고 형제 사이에는 대소관계가 정해지지 않는다. 아래 그림은 최소힙 예시이다. 2. 최소 힙(Min-Heap) 구현방법 힙은 배열을 이용하여 구현할 수 있다. 아래 그림과 같이 구현된다. 각 자식 노드들의 인덱스는 아래와 같이 계산한다. 왼쪽 자식노드 (부모 노드의 인덱스*2) + 1 오른쪽 자식노드 (부모 노드의 인덱스*2) + 2 먼저 아래처럼 최소힙 생성자 함수부터...


#heap #자바스크립트최소힙 #자바스크립트힙 #최대힙 #최대힙구현 #최대힙이란 #최소힙 #최소힙구현 #최소힙이란 #힙javascript #minheap구현 #minheap #heapjavascript #heapjavascript구현 #heap구현 #heap이란 #heap자바스크립트 #heap자바스크립트구현 #javascriptheap #javascript힙 #jsheap #힙이란

원문링크 : [자료구조] 힙(Heap)의 개념 및 구현 (JavaScript)