UNPKG

@dxzmpk/js-algorithms-data-structures

Version:

Algorithms and data-structures implemented on JavaScript

32 lines (22 loc) 974 B
# Heap (data-structure) _Read this in other languages:_ [_简体中文_](README.zh-CN.md), [_Русский_](README.ru-RU.md), [_日本語_](README.ja-JP.md), [_Français_](README.fr-FR.md), [_Português_](README.pt-BR.md) In computer science, a **heap** is a specialized tree-based data structure that satisfies the heap property described below. In a *min heap*, if `P` is a parent node of `C`, then the key (the value) of `P` is less than or equal to the key of `C`. ![MinHeap](https://upload.wikimedia.org/wikipedia/commons/6/69/Min-heap.png) In a *max heap*, the key of `P` is greater than or equal to the key of `C` ![Heap](https://upload.wikimedia.org/wikipedia/commons/3/38/Max-Heap.svg) The node at the "top" of the heap with no parents is called the root node. ## References - [Wikipedia](https://en.wikipedia.org/wiki/Heap_(data_structure)) - [YouTube](https://www.youtube.com/watch?v=t0Cq6tVNRBA&index=5&t=0s&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8)