Heap

From NovaOrdis Knowledge Base
Revision as of 21:53, 9 October 2021 by Ovidiu (talk | contribs) (→‎Overview)
Jump to navigation Jump to search

External

Internal

Overview

This article is about binary heaps. A binary heap data structure is an array where data is placed to form a complete binary tree, plus the index of the last node in the heap. Each element of the array contains a pointer to tree nodes. Each node contains at least a key. The heap works by comparing key and placing the pointer of the associated nodes in the right position in the heap.

More details CLRS page 151, page 1177.

Supported Operations

INSERT

Insert a node in the tree.

Also see

Data Structures | INSERT

REMOVE-MIN

Remove the node from the heap with minimum key value.

Also see:

Data Structures | DELETE

Min Heap and Max Heap

A heap is constructed in such a way that it maintains a minimum value or a maximum value, but not both. A heap that maintains the minimum value is called a min heap. A heap that maintains the maximum value is called a max heap.