Class CharHeapPriorityQueue
- All Implemented Interfaces:
CharPriorityQueue,PriorityQueue<Character>,Serializable
public class CharHeapPriorityQueue extends Object implements CharPriorityQueue, Serializable
Instances of this class represent a priority queue using a heap. The heap is
enlarged as needed, but it is never shrunk. Use the trim() method to
reduce its size, if necessary.
- See Also:
- Serialized Form
-
Constructor Summary
Constructors Constructor Description CharHeapPriorityQueue()Creates a new empty queue using the natural order.CharHeapPriorityQueue(char[] a)Wraps a given array in a queue using the natural order.CharHeapPriorityQueue(char[] a, int size)Wraps a given array in a queue using the natural order.CharHeapPriorityQueue(char[] a, int size, CharComparator c)Wraps a given array in a queue using a given comparator.CharHeapPriorityQueue(char[] a, CharComparator c)Wraps a given array in a queue using a given comparator.CharHeapPriorityQueue(int capacity)Creates a new empty queue with a given capacity and using the natural order.CharHeapPriorityQueue(int capacity, CharComparator c)Creates a new empty queue with a given capacity and comparator.CharHeapPriorityQueue(CharCollection collection)Creates a queue using the elements in a type-specific collection using the natural order.CharHeapPriorityQueue(CharCollection collection, CharComparator c)Creates a queue using the elements in a type-specific collection using a given comparator.CharHeapPriorityQueue(CharComparator c)Creates a new empty queue with a given comparator.CharHeapPriorityQueue(Collection<? extends Character> collection)Creates a queue using the elements in a collection using the natural order.CharHeapPriorityQueue(Collection<? extends Character> collection, CharComparator c)Creates a queue using the elements in a collection using a given comparator. -
Method Summary
Modifier and Type Method Description voidchanged()Notifies the queue that the first element has changed (optional operation).voidclear()Removes all elements from this queue.CharComparatorcomparator()Returns the comparator associated with this priority queue, or null if it uses its elements' natural ordering.chardequeueChar()Dequeues the first element from the queue.voidenqueue(char x)Enqueues a new element.charfirstChar()Returns the first element of the queue.intsize()Returns the number of elements in this queue.voidtrim()Trims the underlying heap array so that it has exactlysize()elements.Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
CharHeapPriorityQueue
Creates a new empty queue with a given capacity and comparator.- Parameters:
capacity- the initial capacity of this queue.c- the comparator used in this queue, ornullfor the natural order.
-
CharHeapPriorityQueue
public CharHeapPriorityQueue(int capacity)Creates a new empty queue with a given capacity and using the natural order.- Parameters:
capacity- the initial capacity of this queue.
-
CharHeapPriorityQueue
Creates a new empty queue with a given comparator.- Parameters:
c- the comparator used in this queue, ornullfor the natural order.
-
CharHeapPriorityQueue
public CharHeapPriorityQueue()Creates a new empty queue using the natural order. -
CharHeapPriorityQueue
Wraps a given array in a queue using a given comparator.The queue returned by this method will be backed by the given array. The first
sizeelement of the array will be rearranged so to form a heap (this is more efficient than enqueing the elements ofaone by one).- Parameters:
a- an array.size- the number of elements to be included in the queue.c- the comparator used in this queue, ornullfor the natural order.
-
CharHeapPriorityQueue
Wraps a given array in a queue using a given comparator.The queue returned by this method will be backed by the given array. The elements of the array will be rearranged so to form a heap (this is more efficient than enqueing the elements of
aone by one).- Parameters:
a- an array.c- the comparator used in this queue, ornullfor the natural order.
-
CharHeapPriorityQueue
public CharHeapPriorityQueue(char[] a, int size)Wraps a given array in a queue using the natural order.The queue returned by this method will be backed by the given array. The first
sizeelement of the array will be rearranged so to form a heap (this is more efficient than enqueing the elements ofaone by one).- Parameters:
a- an array.size- the number of elements to be included in the queue.
-
CharHeapPriorityQueue
public CharHeapPriorityQueue(char[] a)Wraps a given array in a queue using the natural order.The queue returned by this method will be backed by the given array. The elements of the array will be rearranged so to form a heap (this is more efficient than enqueing the elements of
aone by one).- Parameters:
a- an array.
-
CharHeapPriorityQueue
Creates a queue using the elements in a type-specific collection using a given comparator.This constructor is more efficient than enqueing the elements of
collectionone by one.- Parameters:
collection- a collection; its elements will be used to initialize the queue.c- the comparator used in this queue, ornullfor the natural order.
-
CharHeapPriorityQueue
Creates a queue using the elements in a type-specific collection using the natural order.This constructor is more efficient than enqueing the elements of
collectionone by one.- Parameters:
collection- a collection; its elements will be used to initialize the queue.
-
CharHeapPriorityQueue
Creates a queue using the elements in a collection using a given comparator.This constructor is more efficient than enqueing the elements of
collectionone by one.- Parameters:
collection- a collection; its elements will be used to initialize the queue.c- the comparator used in this queue, ornullfor the natural order.
-
CharHeapPriorityQueue
Creates a queue using the elements in a collection using the natural order.This constructor is more efficient than enqueing the elements of
collectionone by one.- Parameters:
collection- a collection; its elements will be used to initialize the queue.
-
-
Method Details
-
enqueue
public void enqueue(char x)Description copied from interface:CharPriorityQueueEnqueues a new element.- Specified by:
enqueuein interfaceCharPriorityQueue- Parameters:
x- the element to enqueue.- See Also:
PriorityQueue.enqueue(Object)
-
dequeueChar
public char dequeueChar()Description copied from interface:CharPriorityQueueDequeues the first element from the queue.- Specified by:
dequeueCharin interfaceCharPriorityQueue- Returns:
- the dequeued element.
- See Also:
CharPriorityQueue.dequeue()
-
firstChar
public char firstChar()Description copied from interface:CharPriorityQueueReturns the first element of the queue.- Specified by:
firstCharin interfaceCharPriorityQueue- Returns:
- the first element.
- See Also:
CharPriorityQueue.first()
-
changed
public void changed()Description copied from interface:PriorityQueueNotifies the queue that the first element has changed (optional operation).This default implementation just throws an
UnsupportedOperationException.- Specified by:
changedin interfacePriorityQueue<Character>
-
size
public int size()Description copied from interface:PriorityQueueReturns the number of elements in this queue.- Specified by:
sizein interfacePriorityQueue<Character>- Returns:
- the number of elements in this queue.
-
clear
public void clear()Description copied from interface:PriorityQueueRemoves all elements from this queue.- Specified by:
clearin interfacePriorityQueue<Character>
-
trim
public void trim()Trims the underlying heap array so that it has exactlysize()elements. -
comparator
Description copied from interface:CharPriorityQueueReturns 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().- Specified by:
comparatorin interfaceCharPriorityQueue- Specified by:
comparatorin interfacePriorityQueue<Character>- Returns:
- the comparator associated with this priority queue.
- See Also:
PriorityQueue.comparator()
-