Implementation of PriorityQueue
The table below indicates where methods are implemented and the time
complexity of these methods. Some methods are
implemented in more than one place. When this
happens, each entry overrides the entries to its left. When an entry says "based on
iterator" or "traverse iterator" or "uses size," then the time
complexity depends on the iterator or size method.
|
|
PriorityQueue Implementation
|
Abstract
Container
|
Abstract
Priority
Queue
|
Linked
Priority
Queue
|
Heap
Priority
Queue
|
|
|
constructor ()
|
O(1)
|
O(1)
|
O(1)
|
O(1)
|
|
|
constructor
(int maxPriority)
|
|
|
O(1)
|
|
|
|
|
|
|
|
|
| void
|
clear ()
|
O(1)
|
|
O(1)
|
O(1)
|
| Object
|
clone ()
|
|
|
O(n)
|
O(n)
|
| Collection
|
collectionView ()
|
based on iterator
|
|
|
|
| Object
|
dequeue ()
|
|
|
O(1)
|
O(log n)
|
| void
|
enqueue (Object item)
|
|
uses enqueue (i, 1)
|
|
|
| void
|
enqueue (Object item,
int priority)
|
|
abstract
|
O(1)
|
O(log n)
|
| boolean
|
equals (Object other)
|
|
traverse iterator
|
|
|
| int
|
hashCode ()
|
traverse iterator
|
|
|
|
| boolean
|
isEmpty
|
uses size method
|
|
|
|
| Iterator
|
iterator ()
|
abstract
|
|
O(1)
|
O(n log n)
|
| Object
|
peek ()
|
|
|
O(1)
|
O(1)
|
| int
|
size ()
|
O(1)
|
|
|
|
| Object []
|
toArray ()
|
traverse iterator
|
|
|
|
| String
|
toString ()
|
traverse iterator
|
|
O(n)
|
O(n log n)
|