Next: Queues, Previous: Object, Up: Data Structures [Contents][Index]

This algorithm for priority queues is due to Introduction to Algorithms by T. Cormen, C. Leiserson, R. Rivest. 1989 MIT Press.

- Function:
**make-heap***pred<?* -
Returns a binary heap suitable which can be used for priority queue operations.

- Function:
**heap-length***heap* -
Returns the number of elements in

`heap`.

- Procedure:
**heap-insert!***heap item* -
Inserts

`item`into`heap`.`item`can be inserted multiple times. The value returned is unspecified.

- Procedure:
**heap-extract-max!***heap* -
Returns the item which is larger than all others according to the

`pred<?`argument to`make-heap`

. If there are no items in`heap`, an error is signaled.