structure
Class PriorityVector

java.lang.Object
  extended by structure.PriorityVector
All Implemented Interfaces:
PriorityQueue

public class PriorityVector
extends java.lang.Object
implements PriorityQueue

A vector-based implementation of a priority queue. Similar to an ordered vector, except that only the smallest value may be accessed in this structure.

See Also:
OrderedVector

Field Summary
protected  Vector data
          The vector of data that is maintained in increasing order.
 
Constructor Summary
PriorityVector()
          Construct an empty priority queue.
 
Method Summary
 void add(java.lang.Comparable value)
          Add a comparable value to the priority queue.
 void clear()
          Remove all the values from the priority queue.
 java.lang.Comparable getFirst()
          Fetch the smallest value of the priority queue.
protected  int indexOf(java.lang.Comparable target)
           
 boolean isEmpty()
          Determine if the priority queue is empty.
 java.lang.Comparable remove()
          Remove the smallest value of the structure.
 int size()
          Determine the size of the priority queue.
 java.lang.String toString()
          Construct a string representation of the priority vector.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

data

protected Vector data
The vector of data that is maintained in increasing order.

Constructor Detail

PriorityVector

public PriorityVector()
Construct an empty priority queue.

Postcondition:
constructs a new priority queue
Method Detail

getFirst

public java.lang.Comparable getFirst()
Fetch the smallest value of the priority queue.

Specified by:
getFirst in interface PriorityQueue
Returns:
The smallest value of the structure.
Precondition:
!isEmpty()
Postcondition:
returns the minimum value in the priority queue

remove

public java.lang.Comparable remove()
Remove the smallest value of the structure.

Specified by:
remove in interface PriorityQueue
Returns:
The smallest value of the structure.
Precondition:
!isEmpty()
Postcondition:
removes and returns minimum value in priority queue

add

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

Specified by:
add in interface PriorityQueue
Parameters:
value - The comparable value to be added.
Precondition:
value is non-null
Postcondition:
inserts value in priority queue leaves elements in order

indexOf

protected int indexOf(java.lang.Comparable target)

isEmpty

public boolean isEmpty()
Determine if the priority queue is empty.

Specified by:
isEmpty in interface PriorityQueue
Returns:
True iff there are no elements in the priority queue.
Postcondition:
returns true iff the priority queue is empty

size

public int size()
Determine the size of the priority queue.

Specified by:
size in interface PriorityQueue
Returns:
The number of elements in the priority queue.
Postcondition:
returns number of elements in priority queue

clear

public void clear()
Remove all the values from the priority queue.

Specified by:
clear in interface PriorityQueue
Postcondition:
removes all elements from priority queue

toString

public java.lang.String toString()
Construct a string representation of the priority vector.

Overrides:
toString in class java.lang.Object
Returns:
String describing priority vector.
Postcondition:
returns string representation of priority vector