Package dsa.lab09.exercises
Class BinaryHeapPriorityQueue<Priority extends Comparable<Priority>,Item> 
java.lang.Object
dsa.lab09.exercises.BinaryHeapPriorityQueue<Priority,Item> 
- Type Parameters:
- Priority- the priority type
- Item- the item type
- All Implemented Interfaces:
- Container<PriorityQueueItem<Priority,,- Item>> - PriorityQueue<Priority,,- Item> - Iterable<PriorityQueueItem<Priority,- Item>> 
public class BinaryHeapPriorityQueue<Priority extends Comparable<Priority>,Item> 
extends Object
implements PriorityQueue<Priority,Item> 
A binary heap priority queue.
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescriptionstatic classNested classes/interfaces inherited from interface dsa.lab09.base.PriorityQueuePriorityQueue.ItemIterator<Priority extends Comparable<Priority>,Item> 
- 
Constructor SummaryConstructorsConstructorDescriptionConstruct an empty binary heap priority queue.BinaryHeapPriorityQueue(PriorityQueueItem<Priority, Item>... items) Construct a binary heap priority queue containing the given items.Construct a binary heap priority queue containing the given items.BinaryHeapPriorityQueue(Iterable<PriorityQueueItem<Priority, Item>> items, int size) Construct a binary heap priority queue containing the given items more efficiently thanBinaryHeapPriorityQueue(Iterable).
- 
Method SummaryModifier and TypeMethodDescriptionvoidinsert(PriorityQueueItem<Priority, Item> item) Insert the given prioritised item.items()Get a forward iterable that yields each prioritised item once.max()Get the item with the greatest priority.Remove the item with the greatest priority.reversed()Get a reverse iterable that yields each prioritised item once.intsize()Get the number of contained items.Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.lang.IterableforEach, spliteratorMethods inherited from interface dsa.lab09.base.PriorityQueueinsert, itemsOnly, reversedItemsOnly
- 
Constructor Details- 
BinaryHeapPriorityQueuepublic BinaryHeapPriorityQueue()Construct an empty binary heap priority queue.
- 
BinaryHeapPriorityQueueConstruct a binary heap priority queue containing the given items.- Parameters:
- items- the items
 
- 
BinaryHeapPriorityQueuepublic BinaryHeapPriorityQueue(Iterable<PriorityQueueItem<Priority, Item>> items, int size) throws IllegalArgumentExceptionConstruct a binary heap priority queue containing the given items more efficiently thanBinaryHeapPriorityQueue(Iterable).- Parameters:
- items- the items
- size- the number of items
- Throws:
- IllegalArgumentException- if- size!=- n(where- nis- items's size)
 
- 
BinaryHeapPriorityQueueConstruct a binary heap priority queue containing the given items.- Parameters:
- items- the items
 
 
- 
- 
Method Details- 
sizepublic int size()Description copied from interface:ContainerGet the number of contained items.- Specified by:
- sizein interface- Container<Priority extends Comparable<Priority>>
- Returns:
- the size
 
- 
maxDescription copied from interface:PriorityQueueGet the item with the greatest priority.- Specified by:
- maxin interface- PriorityQueue<Priority extends Comparable<Priority>,- Item> 
- Returns:
- the maximum priority item, or nullif empty
 
- 
insertDescription copied from interface:PriorityQueueInsert the given prioritised item.- Specified by:
- insertin interface- PriorityQueue<Priority extends Comparable<Priority>,- Item> 
- Parameters:
- item- the prioritised item
 
- 
removeMaxDescription copied from interface:PriorityQueueRemove the item with the greatest priority.- Specified by:
- removeMaxin interface- PriorityQueue<Priority extends Comparable<Priority>,- Item> 
- Returns:
- the maximum priority item, or nullif empty
 
- 
itemsDescription copied from interface:PriorityQueueGet a forward iterable that yields each prioritised item once.The items are iterated over in max-to-min order (by priority). - Specified by:
- itemsin interface- Container<Priority extends Comparable<Priority>>
- Specified by:
- itemsin interface- PriorityQueue<Priority extends Comparable<Priority>,- Item> 
- Returns:
- an iterable over the prioritised items
 
- 
reversedDescription copied from interface:PriorityQueueGet a reverse iterable that yields each prioritised item once.The items are iterated over in min-to-max order (by priority). - Specified by:
- reversedin interface- PriorityQueue<Priority extends Comparable<Priority>,- Item> 
- Returns:
- an iterable over the prioritised items
 
 
-