Advanced Programming I Lecture Notes

Advanced Programming I Lecture Notes

15 March 2007 • Heaps and Priority Queues


Outline

Array-Based Trees

Binary Tree Indexing

Heaps

Heap Characteristics

Heap ADT

Other Heap Operations

Heap Data

Heap Add

Example Heap Add

Heap Remove

Example Heap Remove

Priority Queues

Heaps as Priority Queues

Sorting Again

Sorting With A Heap

Heapsort

heapsort(a[], n)

  for i = 1 to n - 1
    bubble-up(a, i)

  for i = n - 1 to 1
    swap(a[0], a[i])
    bubble-down(i)

Are They?

heapsort vs quicksort on ints

heapsort vs quicksort on points

Points to Remember


This page last modified on 24 February 2006.

This work is covered by a
Creative Commons License.