Binomial heap

In computer science, a binomial heap is a data structure that acts as a priority queue but also allows pairs of heaps to be merged. It is important as an implementation of the mergeable heap abstract data type (also called meldable heap), which is a priority queue supporting merge operation. It is implemented as a heap similar to a binary heap but using a special tree structure that is different from the complete binary trees used by binary heaps. Binomial heaps were invented in 1978 by Jean Vuillemin. Binomial Heaps are more of an extension of binary heaps than a they are a completely different data structure. Binomial heaps are able to offer faster merges operations with other operations that are associated with being an extension of binary heaps. Overall, binomial heaps are simply a collection of binary trees.

Binomial heap
Typeheap
Invented1978
Invented byJean Vuillemin
Complexities in big O notation
Space complexity
Time complexity
Function Amortized Worst Case
Insert Θ(1) O(log n)
Find-min Θ(1) O(1)
Delete-min Θ(log n) O(log n)
Decrease-key Θ(log n) O(log n)
Merge Θ(log n) O(log n)
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.