public abstract class PriorityQueue
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected java.lang.Object[] |
heap |
Constructor and Description |
---|
PriorityQueue() |
Modifier and Type | Method and Description |
---|---|
void |
adjustTop()
Should be called when the Object at top changes values.
|
void |
clear()
Removes all entries from the PriorityQueue.
|
protected void |
initialize(int maxSize)
Subclass constructors must call this.
|
boolean |
insert(java.lang.Object element)
Adds element to the PriorityQueue in log(size) time if either
the PriorityQueue is not full, or not lessThan(element, top()).
|
java.lang.Object |
insertWithOverflow(java.lang.Object element)
insertWithOverflow() is the same as insert() except its
return value: it returns the object (if any) that was
dropped off the heap because it was full.
|
protected abstract boolean |
lessThan(java.lang.Object a,
java.lang.Object b)
Determines the ordering of objects in this priority queue.
|
java.lang.Object |
pop()
Removes and returns the least element of the PriorityQueue in log(size)
time.
|
void |
put(java.lang.Object element)
Adds an Object to a PriorityQueue in log(size) time.
|
int |
size()
Returns the number of elements currently stored in the PriorityQueue.
|
java.lang.Object |
top()
Returns the least element of the PriorityQueue in constant time.
|
protected abstract boolean lessThan(java.lang.Object a, java.lang.Object b)
protected final void initialize(int maxSize)
public final void put(java.lang.Object element)
public boolean insert(java.lang.Object element)
element
- public java.lang.Object insertWithOverflow(java.lang.Object element)
public final java.lang.Object top()
public final java.lang.Object pop()
public final void adjustTop()
{ pq.top().change(); pq.adjustTop(); }instead of
{ o = pq.pop(); o.change(); pq.push(o); }
public final int size()
public final void clear()
Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.