A Fibonnaci Heap supports the following operations:
insert(key, data)
: adds a new element to the data structurefind-min()
: returns a pointer to the element with minimum keydelete-min()
: removes the element with minimum keydelete(node)
: deletes the element pointed to bynode
decrease-key(node)
: decreases the key of the element pointed to bynode
All non-delete operations are $O(1)$ (amortized) time, and the delete operations are $O(\log n)$ amortized time.
Are there any implementations of a priority queue which also supportincrease-key(node)
in $O(1)$ (amortized) time?