it.unimi.dsi.fastutil.ints
Class IntArrayFIFOQueue

java.lang.Object
  extended by it.unimi.dsi.fastutil.AbstractPriorityQueue<java.lang.Integer>
      extended by it.unimi.dsi.fastutil.ints.AbstractIntPriorityQueue
          extended by it.unimi.dsi.fastutil.ints.IntArrayFIFOQueue
All Implemented Interfaces:
IntPriorityQueue, PriorityQueue<java.lang.Integer>

public class IntArrayFIFOQueue
extends AbstractIntPriorityQueue

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).


Field Summary
static int INITIAL_CAPACITY
          The standard initial capacity of a queue.
 
Constructor Summary
IntArrayFIFOQueue()
          Creates a new empty queue with standard initial capacity.
IntArrayFIFOQueue(int capacity)
          Creates a new empty queue with given capacity.
 
Method Summary
 void clear()
          Removes all elements from this queue.
 IntComparator comparator()
          Returns null (FIFO queues have no comparator).
 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.
 int size()
          Returns the number of elements in this queue.
 void trim()
          Trims the queue to the smallest possible size.
 
Methods inherited from class it.unimi.dsi.fastutil.ints.AbstractIntPriorityQueue
dequeue, enqueue, first, last
 
Methods inherited from class it.unimi.dsi.fastutil.AbstractPriorityQueue
changed, isEmpty
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
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

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 Detail

comparator

public IntComparator comparator()
Returns null (FIFO queues have no comparator).

Returns:
null.
See Also:
PriorityQueue.comparator()

dequeueInt

public int dequeueInt()
Description copied from interface: IntPriorityQueue
Dequeues the first element from the queue.

Returns:
the dequeued element.

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: IntPriorityQueue
Enqueues a new element.

Parameters:
x - the element to enqueue.

enqueueFirst

public void enqueueFirst(int x)
Enqueues a new element as the first element (in dequeuing order) of the queue.


firstInt

public int firstInt()
Returns the first element of the queue.

Returns:
the first element of the queue.

lastInt

public int lastInt()
Returns the last element of the queue.

Specified by:
lastInt in interface IntPriorityQueue
Overrides:
lastInt in class AbstractIntPriorityQueue
Returns:
the last element of the queue.

clear

public void clear()
Description copied from interface: PriorityQueue
Removes all elements from this queue.


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.

Returns:
the number of elements in this queue.