Skip to content
Category

Heaps (data structures)

page 1
heap
tree-based data structure in computer science
heapsort
In computer science, heapsort is an efficient, comparison-based sorting algorithm that reorganizes an input array into a heap (a data structure where each node is greater than its children) and then repeatedly removes the largest node from that heap, placing it at the end of the array in a similar manner to Selection sort.
binary heap
heap data structure that takes the form of a binary tree
binomial heap
priority queue made from heap-ordered trees with power-of-two sizes
treap
In computer science, the treap and the randomized binary search tree are two closely related forms of binary search tree data structures that maintain a dynamic set of ordered keys and allow binary searches among the keys. After any sequence of insertions and deletions of keys, the shape of the tree is a random variable with the same probability distribution as a random binary tree; in particular, with high probability its height is proportional to the logarithm of the number of keys, so that each search, insertion, or deletion operation takes logarithmic time to perform.
Fibonacci heap
heap data structure made of a forest of trees
smoothsort
In computer science, smoothsort is a comparison-based sorting algorithm. A variant of heapsort, it was invented and published by Edsger Dijkstra in 1981. Like heapsort, smoothsort is an in-place algorithm with an upper bound of operations (see big O notation). Like heapsort, smoothsort is not a stable sort. The advantage of smoothsort is that it comes closer to time if the input is already sorted to some degree, whereas heapsort averages regardless of the initial sorted state.
skew heap
heap data structure implemented as a binary tree
double-ended priority queue
abstract data structure that supports removal of maximum- and minimum-priority elements
d-ary heap
priority queue data structure, a generalization of the binary heap in which the nodes have d children instead of 2
pairing heap
type of heap data structure with relatively simple implementation and excellent practical amortized performance
leftist tree
priority queue implemented with a variant of a binary heap