public class IntArrayFIFOQueue extends java.lang.Object implements IntPriorityQueue, java.io.Serializable
Instances of this class represent a FIFO queue using a backing
array in a circular way. The array is enlarged and shrunk as needed. You can use the trim()
method
to reduce its memory usage, if necessary.
This class provides additional methods that implement a deque (double-ended queue).
Modifier and Type | Field and Description |
---|---|
static int |
INITIAL_CAPACITY
The standard initial capacity of a queue.
|
Constructor and Description |
---|
IntArrayFIFOQueue()
Creates a new empty queue with standard initial capacity.
|
IntArrayFIFOQueue(int capacity)
Creates a new empty queue with given capacity.
|
Modifier and Type | Method and Description |
---|---|
void |
clear()
Removes all elements from this queue.
|
IntComparator |
comparator()
Returns the comparator associated with this priority queue, or null if it uses its elements' natural ordering.
|
int |
dequeueInt()
Dequeues the first element from the queue.
|
int |
dequeueLastInt()
Dequeues the last element from the queue.
|
void |
enqueue(int x)
Enqueues a new element.
|
void |
enqueueFirst(int x)
Enqueues a new element as the first element (in dequeuing order) of the queue.
|
int |
firstInt()
Returns the first element of the queue.
|
int |
lastInt()
Returns the last element of the queue, that is, the element the would be dequeued last (optional operation).
|
int |
size()
Returns the number of elements in this queue.
|
void |
trim()
Trims the queue to the smallest possible size.
|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
dequeue, enqueue, first, last
changed, isEmpty
public static final int INITIAL_CAPACITY
public IntArrayFIFOQueue(int capacity)
capacity
- the initial capacity of this queue.public IntArrayFIFOQueue()
public IntComparator comparator()
comparator
in interface IntPriorityQueue
comparator
in interface PriorityQueue<java.lang.Integer>
PriorityQueue.comparator()
null
(FIFO queues have no comparator).public int dequeueInt()
IntPriorityQueue
dequeueInt
in interface IntPriorityQueue
IntPriorityQueue.dequeue()
public int dequeueLastInt()
java.util.NoSuchElementException
- if the queue is empty.public void enqueue(int x)
IntPriorityQueue
enqueue
in interface IntPriorityQueue
x
- the element to enqueue.PriorityQueue.enqueue(Object)
public void enqueueFirst(int x)
x
- the element to enqueue.public int firstInt()
IntPriorityQueue
firstInt
in interface IntPriorityQueue
IntPriorityQueue.first()
public int lastInt()
IntPriorityQueue
This default implementation just throws an UnsupportedOperationException
.
lastInt
in interface IntPriorityQueue
IntPriorityQueue.last()
public void clear()
PriorityQueue
clear
in interface PriorityQueue<java.lang.Integer>
public void trim()
public int size()
PriorityQueue
size
in interface PriorityQueue<java.lang.Integer>