@Private
@Unstable
public abstract class PriorityQueue<T>
extends java.lang.Object
| Constructor | Description |
|---|---|
PriorityQueue() |
| Modifier and Type | Method | 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(T element) |
Adds element to the PriorityQueue in log(size) time if either
the PriorityQueue is not full, or not lessThan(element, top()).
|
protected abstract boolean |
lessThan(java.lang.Object a,
java.lang.Object b) |
Determines the ordering of objects in this priority queue.
|
T |
pop() |
Removes and returns the least element of the PriorityQueue in log(size)
time.
|
void |
put(T element) |
Adds an Object to a PriorityQueue in log(size) time.
|
int |
size() |
Returns the number of elements currently stored in the PriorityQueue.
|
T |
top() |
Returns the least element of the PriorityQueue in constant time.
|
protected abstract boolean lessThan(java.lang.Object a,
java.lang.Object b)
a - object a.b - object b.protected final void initialize(int maxSize)
maxSize - max size.public final void put(T element)
element - element.public boolean insert(T element)
element - element.public final T top()
public final T 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 © 2008–2025 Apache Software Foundation. All rights reserved.