structure
Interface PriorityQueue

All Known Implementing Classes:
PriorityVector, SkewHeap, VectorHeap

public interface PriorityQueue

Interface describing an queue of prioritized values. This linear-like structure has values that are inserted in such a way as to allow them to be removed in increasing order.


Method Summary
 void add(java.lang.Comparable value)
          Add a value to the priority queue.
 void clear()
          Remove all the elements from the queue.
 java.lang.Comparable getFirst()
          Fetch lowest valued (highest priority) item from queue.
 boolean isEmpty()
          Determine if the queue is empty.
 java.lang.Comparable remove()
          Returns the minimum value from the queue.
 int size()
          Determine the size of the queue.
 

Method Detail

getFirst

java.lang.Comparable getFirst()
Fetch lowest valued (highest priority) item from queue.

Returns:
The smallest value from queue.
Precondition:
!isEmpty()
Postcondition:
returns the minimum value in priority queue

remove

java.lang.Comparable remove()
Returns the minimum value from the queue.

Returns:
The minimum value in the queue.
Precondition:
!isEmpty()
Postcondition:
returns and removes minimum value from queue

add

void add(java.lang.Comparable value)
Add a value to the priority queue.

Parameters:
value - The value to be added.
Precondition:
value is non-null comparable
Postcondition:
value is added to priority queue

isEmpty

boolean isEmpty()
Determine if the queue is empty.

Returns:
True if the queue is empty.
Postcondition:
returns true iff no elements are in queue

size

int size()
Determine the size of the queue.

Returns:
The number of elements within the queue.
Postcondition:
returns number of elements within queue

clear

void clear()
Remove all the elements from the queue.

Postcondition:
removes all elements from queue