Package it.unimi.dsi.fastutil.floats
Class FloatArrayFIFOQueue
- java.lang.Object
-
- it.unimi.dsi.fastutil.floats.FloatArrayFIFOQueue
-
- All Implemented Interfaces:
FloatPriorityQueue
,PriorityQueue<java.lang.Float>
,java.io.Serializable
public class FloatArrayFIFOQueue extends java.lang.Object implements FloatPriorityQueue, 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 int
INITIAL_CAPACITY
The standard initial capacity of a queue.
-
Constructor Summary
Constructors Constructor Description FloatArrayFIFOQueue()
Creates a new empty queue with standard initial capacity.FloatArrayFIFOQueue(int capacity)
Creates a new empty queue with given capacity.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clear()
Removes all elements from this queue.FloatComparator
comparator()
Returns the comparator associated with this priority queue, or null if it uses its elements' natural ordering.float
dequeueFloat()
Dequeues the first element from the queue.float
dequeueLastFloat()
Dequeues the last element from the queue.void
enqueue(float x)
Enqueues a new element.void
enqueueFirst(float x)
Enqueues a new element as the first element (in dequeuing order) of the queue.float
firstFloat()
Returns the first element of the queue.float
lastFloat()
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.-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface it.unimi.dsi.fastutil.floats.FloatPriorityQueue
dequeue, enqueue, first, last
-
Methods inherited from interface it.unimi.dsi.fastutil.PriorityQueue
changed, isEmpty
-
-
-
-
Field Detail
-
INITIAL_CAPACITY
public static final int INITIAL_CAPACITY
The standard initial capacity of a queue.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
FloatArrayFIFOQueue
public FloatArrayFIFOQueue(int capacity)
Creates a new empty queue with given capacity.- Parameters:
capacity
- the initial capacity of this queue.
-
FloatArrayFIFOQueue
public FloatArrayFIFOQueue()
Creates a new empty queue with standard initial capacity.
-
-
Method Detail
-
comparator
public FloatComparator comparator()
Returns the comparator associated with this priority queue, or null if it uses its elements' natural ordering.Note that this specification strengthens the one given in
PriorityQueue.comparator()
.This implementation returns
null
(FIFO queues have no comparator).- Specified by:
comparator
in interfaceFloatPriorityQueue
- Specified by:
comparator
in interfacePriorityQueue<java.lang.Float>
- Returns:
- the comparator associated with this priority queue.
- See Also:
PriorityQueue.comparator()
-
dequeueFloat
public float dequeueFloat()
Description copied from interface:FloatPriorityQueue
Dequeues the first element from the queue.- Specified by:
dequeueFloat
in interfaceFloatPriorityQueue
- Returns:
- the dequeued element.
- See Also:
FloatPriorityQueue.dequeue()
-
dequeueLastFloat
public float dequeueLastFloat()
Dequeues the last element from the queue.- Returns:
- the dequeued element.
- Throws:
java.util.NoSuchElementException
- if the queue is empty.
-
enqueue
public void enqueue(float x)
Description copied from interface:FloatPriorityQueue
Enqueues a new element.- Specified by:
enqueue
in interfaceFloatPriorityQueue
- Parameters:
x
- the element to enqueue.- See Also:
PriorityQueue.enqueue(Object)
-
enqueueFirst
public void enqueueFirst(float x)
Enqueues a new element as the first element (in dequeuing order) of the queue.- Parameters:
x
- the element to enqueue.
-
firstFloat
public float firstFloat()
Description copied from interface:FloatPriorityQueue
Returns the first element of the queue.- Specified by:
firstFloat
in interfaceFloatPriorityQueue
- Returns:
- the first element.
- See Also:
FloatPriorityQueue.first()
-
lastFloat
public float lastFloat()
Description copied from interface:FloatPriorityQueue
Returns 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:
lastFloat
in interfaceFloatPriorityQueue
- Returns:
- the last element.
- See Also:
FloatPriorityQueue.last()
-
clear
public void clear()
Description copied from interface:PriorityQueue
Removes all elements from this queue.- Specified by:
clear
in interfacePriorityQueue<java.lang.Float>
-
trim
public void trim()
Trims the queue to the smallest possible size.
-
size
public int size()
Description copied from interface:PriorityQueue
Returns the number of elements in this queue.- Specified by:
size
in interfacePriorityQueue<java.lang.Float>
- Returns:
- the number of elements in this queue.
-
-