bamboo.util
Class PriorityQueue<Value,Priority extends Comparable<Priority>>

java.lang.Object
  extended by bamboo.util.PriorityQueue<Value,Priority>

public class PriorityQueue<Value,Priority extends Comparable<Priority>>
extends Object

A non-blocking priority queue.

Version:
$Id: PriorityQueue.java,v 1.1 2005/02/16 05:57:13 srhea Exp $
Author:
Westley Weimer

Field Summary
protected  Vector<Value> heap
           
protected  int heap_size
           
protected  Vector<Priority> prio
           
 
Constructor Summary
PriorityQueue()
          Creates a new priority queue.
PriorityQueue(int initial_capacity)
          Creates a new priority queue with the given initial capacity.
 
Method Summary
 boolean add(Value o, Priority p)
          Adds an object with the given priority.
 Value getFirst()
           
 Priority getFirstPriority()
           
 boolean isEmpty()
           
 Value removeFirst()
           
 int size()
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

heap

protected Vector<Value> heap

prio

protected Vector<Priority extends Comparable<Priority>> prio

heap_size

protected int heap_size
Constructor Detail

PriorityQueue

public PriorityQueue()
Creates a new priority queue.


PriorityQueue

public PriorityQueue(int initial_capacity)
Creates a new priority queue with the given initial capacity.

Method Detail

size

public final int size()

isEmpty

public final boolean isEmpty()

add

public final boolean add(Value o,
                         Priority p)
Adds an object with the given priority.


getFirstPriority

public final Priority getFirstPriority()

getFirst

public final Value getFirst()

removeFirst

public final Value removeFirst()

toString

public String toString()
Overrides:
toString in class Object