|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.exist.util.Heap
public class Heap
A heap-based priority queue, without any concurrency control (i.e., no blocking on empty/full states). This class provides the data structure mechanics for BoundedPriorityQueue.
The class currently uses a standard array-based heap, as described in, for example, Sedgewick's Algorithms text. All methods are fully synchronized. In the future, it may instead use structures permitting finer-grained locking.
[ Introduction to this package. ]
Constructor Summary | |
---|---|
Heap(int capacity)
Create a Heap with the given capacity, and relying on natural ordering. |
|
Heap(int capacity,
Comparator cmp)
Create a Heap with the given initial capacity and comparator |
Method Summary | |
---|---|
void |
clear()
remove all elements |
Object |
extract()
Return and remove least element, or null if empty |
void |
insert(Object x)
insert an element, resize if necessary |
Object |
peek()
Return least element without removing it, or null if empty |
int |
size()
Return number of elements |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public Heap(int capacity, Comparator cmp) throws IllegalArgumentException
IllegalArgumentException
- if capacity less or equal to zeropublic Heap(int capacity)
Method Detail |
---|
public void insert(Object x)
public Object extract()
public Object peek()
public int size()
public void clear()
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |