cz.cuni.amis.utils.heap
Interface IHeap<NODE>

Package class diagram package IHeap
Type Parameters:
NODE -
All Superinterfaces:
Collection<NODE>, Iterable<NODE>
All Known Implementing Classes:
Heap, ImmutableHeap

public interface IHeap<NODE>
extends Collection<NODE>

Interface for standard Heap (with addition of decreace/increase/changedKey operations).

We also assume that heap will use Comparator for comparing stored nodes.

Author:
Jimmy

Method Summary
 boolean addAll(NODE[] items)
          Adds all items from 'items'.
 boolean containsAll(Object[] items)
          Whether this heap contains all 'items'.
 boolean decreaseKey(NODE node)
          "node" value has been decreased, bubble it through the heap.
 boolean deleteMin()
          Deletes node with min-value, returns success (true if there was some object in the heap, false if there weren't).
 boolean empty()
          Whether this heap is empty.
 Comparator<NODE> getComparator()
          Returns comparator that is used to compare the nodes in the heap.
 NODE getMin()
          Returns node with min-value from the heap.
 boolean changedKey(NODE node)
          "node" value has been changed (not sure if it was increased or decreased), bubble it through the heap.
 boolean increaseKey(NODE node)
          "node" value has been increased, bubble it through the heap.
 Set<NODE> toSet()
          Returns this heap as a set.
 
Methods inherited from interface java.util.Collection
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray
 

Method Detail

getComparator

Comparator<NODE> getComparator()
Returns comparator that is used to compare the nodes in the heap.

Returns:

getMin

NODE getMin()
Returns node with min-value from the heap.

Returns:

deleteMin

boolean deleteMin()
Deletes node with min-value, returns success (true if there was some object in the heap, false if there weren't).

Returns:
success

decreaseKey

boolean decreaseKey(NODE node)
"node" value has been decreased, bubble it through the heap.

Parameters:
node -
Returns:

increaseKey

boolean increaseKey(NODE node)
"node" value has been increased, bubble it through the heap.

Parameters:
node -
Returns:

changedKey

boolean changedKey(NODE node)
"node" value has been changed (not sure if it was increased or decreased), bubble it through the heap.

Parameters:
node -
Returns:

addAll

boolean addAll(NODE[] items)
Adds all items from 'items'.

Parameters:
items -
Returns:

containsAll

boolean containsAll(Object[] items)
Whether this heap contains all 'items'.

Parameters:
items -
Returns:

empty

boolean empty()
Whether this heap is empty.

Returns:

toSet

Set<NODE> toSet()
Returns this heap as a set.

Returns:


Copyright © 2013 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.