Package it.unimi.dsi.fastutil.ints
Class IntArrayFIFOQueue
java.lang.Object
it.unimi.dsi.fastutil.ints.IntArrayFIFOQueue
- All Implemented Interfaces:
IntPriorityQueue,PriorityQueue<java.lang.Integer>,java.io.Serializable
public class IntArrayFIFOQueue extends java.lang.Object implements IntPriorityQueue, java.io.Serializable
A type-specific array-based FIFO queue, supporting also deque operations.
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).
- See Also:
- Serialized Form
-
Field Summary
Fields Modifier and Type Field Description static intINITIAL_CAPACITYThe standard initial capacity of a queue. -
Constructor Summary
Constructors Constructor Description IntArrayFIFOQueue()Creates a new empty queue with standard initial capacity.IntArrayFIFOQueue(int capacity)Creates a new empty queue with given capacity. -
Method Summary
Modifier and Type Method Description voidclear()Removes all elements from this queue.IntComparatorcomparator()Returns the comparator associated with this priority queue, or null if it uses its elements' natural ordering.intdequeueInt()Dequeues the first element from the queue.intdequeueLastInt()Dequeues the last element from the queue.voidenqueue(int x)Enqueues a new element.voidenqueueFirst(int x)Enqueues a new element as the first element (in dequeuing order) of the queue.intfirstInt()Returns the first element of the queue.intlastInt()Returns the last element of the queue, that is, the element the would be dequeued last (optional operation).intsize()Returns the number of elements in this queue.voidtrim()Trims the queue to the smallest possible size.Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface it.unimi.dsi.fastutil.ints.IntPriorityQueue
dequeue, enqueue, first, lastMethods inherited from interface it.unimi.dsi.fastutil.PriorityQueue
changed, isEmpty
-
Field Details
-
INITIAL_CAPACITY
public static final int INITIAL_CAPACITYThe standard initial capacity of a queue.- See Also:
- Constant Field Values
-
-
Constructor Details
-
IntArrayFIFOQueue
public IntArrayFIFOQueue(int capacity)Creates a new empty queue with given capacity.- Parameters:
capacity- the initial capacity of this queue.
-
IntArrayFIFOQueue
public IntArrayFIFOQueue()Creates a new empty queue with standard initial capacity.
-
-
Method Details
-
comparator
Returns the comparator associated with this priority queue, or null if it uses its elements' natural ordering.- Specified by:
comparatorin interfaceIntPriorityQueue- Specified by:
comparatorin interfacePriorityQueue<java.lang.Integer>- Returns:
- the comparator associated with this priority queue.
- See Also:
PriorityQueue.comparator()- Implementation Specification:
- This implementation returns
null(FIFO queues have no comparator).
-
dequeueInt
public int dequeueInt()Description copied from interface:IntPriorityQueueDequeues the first element from the queue.- Specified by:
dequeueIntin interfaceIntPriorityQueue- Returns:
- the dequeued element.
- See Also:
IntPriorityQueue.dequeue()
-
dequeueLastInt
public int dequeueLastInt()Dequeues the last element from the queue.- Returns:
- the dequeued element.
- Throws:
java.util.NoSuchElementException- if the queue is empty.
-
enqueue
public void enqueue(int x)Description copied from interface:IntPriorityQueueEnqueues a new element.- Specified by:
enqueuein interfaceIntPriorityQueue- Parameters:
x- the element to enqueue.- See Also:
PriorityQueue.enqueue(Object)
-
enqueueFirst
public void enqueueFirst(int x)Enqueues a new element as the first element (in dequeuing order) of the queue.- Parameters:
x- the element to enqueue.
-
firstInt
public int firstInt()Description copied from interface:IntPriorityQueueReturns the first element of the queue.- Specified by:
firstIntin interfaceIntPriorityQueue- Returns:
- the first element.
- See Also:
IntPriorityQueue.first()
-
lastInt
public int lastInt()Description copied from interface:IntPriorityQueueReturns the last element of the queue, that is, the element the would be dequeued last (optional operation).This default implementation just throws an
UnsupportedOperationException.- Specified by:
lastIntin interfaceIntPriorityQueue- Returns:
- the last element.
- See Also:
IntPriorityQueue.last()
-
clear
public void clear()Description copied from interface:PriorityQueueRemoves all elements from this queue.- Specified by:
clearin interfacePriorityQueue<java.lang.Integer>
-
trim
public void trim()Trims the queue to the smallest possible size. -
size
public int size()Description copied from interface:PriorityQueueReturns the number of elements in this queue.- Specified by:
sizein interfacePriorityQueue<java.lang.Integer>- Returns:
- the number of elements in this queue.
-