public static class IndirectPriorityQueues.EmptyIndirectPriorityQueue extends AbstractIndirectPriorityQueue
This class may be useful to implement your own in case you subclass
IndirectPriorityQueue
.
Modifier and Type | Method and Description |
---|---|
void |
allChanged()
Notifies this queue that the all elements have changed (optional operation).
|
void |
changed()
Notifies this queue that the first element has changed (optional operation).
|
void |
changed(int i)
Notifies this queue that the specified element has changed (optional operation).
|
void |
clear()
Removes all elements from this queue.
|
java.util.Comparator<?> |
comparator()
Returns the comparator associated with this queue, or
null if it uses its elements' natural ordering. |
boolean |
contains(int index)
Checks whether a given index belongs to this queue (optional operation).
|
int |
dequeue()
Dequeues the first element from this queue.
|
void |
enqueue(int i)
Enqueues a new element.
|
int |
first()
Returns the first element of this queue.
|
int |
front(int[] a)
Retrieves the front of this queue in a given array (optional operation).
|
boolean |
isEmpty()
Checks whether this queue is empty.
|
int |
last()
Returns the last element of this queue, that is, the element the would be dequeued last (optional operation).
|
boolean |
remove(int i)
Removes the specified element from this queue (optional operation).
|
int |
size()
Returns the number of elements in this queue.
|
public void enqueue(int i)
IndirectPriorityQueue
i
- the element to enqueue.public int dequeue()
IndirectPriorityQueue
public boolean isEmpty()
IndirectPriorityQueue
isEmpty
in interface IndirectPriorityQueue
isEmpty
in class AbstractIndirectPriorityQueue
public int size()
IndirectPriorityQueue
public boolean contains(int index)
IndirectPriorityQueue
contains
in interface IndirectPriorityQueue
contains
in class AbstractIndirectPriorityQueue
index
- an index possibly in the queue.public void clear()
IndirectPriorityQueue
public int first()
IndirectPriorityQueue
public int last()
IndirectPriorityQueue
last
in interface IndirectPriorityQueue
last
in class AbstractIndirectPriorityQueue
public void changed()
IndirectPriorityQueue
changed
in interface IndirectPriorityQueue
changed
in class AbstractIndirectPriorityQueue
public void allChanged()
IndirectPriorityQueue
allChanged
in interface IndirectPriorityQueue
allChanged
in class AbstractIndirectPriorityQueue
public java.util.Comparator<?> comparator()
IndirectPriorityQueue
null
if it uses its elements' natural ordering.null
if it uses its elements' natural ordering.public void changed(int i)
IndirectPriorityQueue
Note that the specified element must belong to this queue.
changed
in interface IndirectPriorityQueue
changed
in class AbstractIndirectPriorityQueue
i
- the element that has changed.public boolean remove(int i)
IndirectPriorityQueue
remove
in interface IndirectPriorityQueue
remove
in class AbstractIndirectPriorityQueue
i
- the element to be removed.public int front(int[] a)
IndirectPriorityQueue
The front of an indirect queue is the set of indices whose associated elements in the reference array are equal to the element associated to the first index. These indices can be always obtain by dequeueing, but this method should retrieve efficiently such indices in the given array without modifying the state of this queue.
a
- an array large enough to hold the front (e.g., at least long as the reference array).a
).