This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: Illinois Institute of Technology Department of Computer Science Lecture 15: March 23, 2009 CS 430 Introduction to Algorithms Spring Semester, 2009 1 Binomial heaps Consider the following operations on heaps: • Make-Heap : creates a new empty heap • Insert : inserts a new element into a heap • Minimum : returns the minimum element in a heap • Extract-Min : returns the minimum element in a heap and removes it from the heap • Union : creates a new heap consisting of the elements of two existing heaps • Decrease-Key : changes the value of some element in a heap to a smaller value • Delete : removes an element from a heap Recall the binary heap, as used in heapsort. 1 The binary heap can be viewed as a binary tree, although it is generally implemented as an array, where the children of element i are elements 2 i and 2 i + 1. Most of these operations can be implemented efficiently (Θ(log n ) time or better) on a binary heap, but there is no efficient way to implement Union : the best way is to concatenate the arrays containing the two heaps and re-heapify the resulting mess, requiring Θ( n ) time. Our goal with binomial heaps is to support all of these) time....
View Full Document
- Spring '08
- Algorithms, LG, Binary heap, binomial heap, binomial heaps