structure5
Interface PriorityQueue<E extends Comparable<E>>

All Known Subinterfaces:
MergeableHeap<E>
All Known Implementing Classes:
PriorityVector, SkewHeap, VectorHeap

public interface PriorityQueue<E extends Comparable<E>>

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.

Example usage:

To print out a list of programmers sorted by age we could use the following:

 public static void main(String[] argv){
        //initialize a new fib heap
        PriorityQueue programmers = new FibHeap();

        //add programmers and their ages to heap
        //ages current of 7/22/2002
        programmers.add(new ComparableAssociation(new Integer(22), "Evan"));
        programmers.add(new ComparableAssociation(new Integer(19), "Chris"));
        programmers.add(new ComparableAssociation(new Integer(20), "Shimon"));
        programmers.add(new ComparableAssociation(new Integer(21), "Diane"));
        programmers.add(new ComparableAssociation(new Integer(21), "Lida"));    
        programmers.add(new ComparableAssociation(new Integer(20), "Rob"));     
        programmers.add(new ComparableAssociation(new Integer(20), "Sean"));    

        //print out programmers 
        while(!programmers.isEmpty()){
            ComparableAssociation p = (ComparableAssociation)programmers.remove();
            System.out.println(p.getValue() + " is " + p.getKey() + " years old.");
        }
 }
 


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

Method Detail

getFirst

E getFirst()
Fetch lowest valued (highest priority) item from queue.

Returns:
The smallest value from queue.

remove

E remove()
Returns the minimum value from the queue.

Returns:
The minimum value in the queue.

add

void add(E value)
Add a value to the priority queue.

Parameters:
value - The value to be added.

isEmpty

boolean isEmpty()
Determine if the queue is empty.

Returns:
True if the queue is empty.

size

int size()
Determine the size of the queue.

Returns:
The number of elements within the queue.

clear

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