Interface DoubleLongHeap
-
- All Known Implementing Classes:
DoubleLongMaxHeap,DoubleLongMinHeap
public interface DoubleLongHeapBasic in-memory heap interface, for double keys and long values.This class is generated from a template.
- Since:
- 0.6.0
- Author:
- Erich Schubert
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceDoubleLongHeap.UnsortedIterUnsorted iterator - in heap order.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidadd(double key, long val)Add a key-value pair to the heapvoidadd(double key, long val, int k)Add a key-value pair to the heap if it improves the top.voidclear()Clear the heap contents.booleancontainsKey(double q)Contains operation for a key (slow: with a linear scan).booleancontainsValue(long q)Contains operation for a value (slow: with a linear scan).booleanisEmpty()Is the heap empty?doublepeekKey()Get the current top key.longpeekValue()Get the current top value.voidpoll()Remove the first element.voidreplaceTopElement(double key, long val)Combined operation that removes the top element, and inserts a new element instead.intsize()Query the size.DoubleLongHeap.UnsortedIterunsortedIter()Get an unsorted iterator to inspect the heap.
-
-
-
Method Detail
-
add
void add(double key, long val)Add a key-value pair to the heap- Parameters:
key- Keyval- Value
-
add
void add(double key, long val, int k)Add a key-value pair to the heap if it improves the top.- Parameters:
key- Keyval- Valuek- Desired maximum size
-
replaceTopElement
void replaceTopElement(double key, long val)Combined operation that removes the top element, and inserts a new element instead.- Parameters:
key- Key of new elementval- Value of new element
-
peekKey
double peekKey()
Get the current top key.- Returns:
- Top key
-
peekValue
long peekValue()
Get the current top value.- Returns:
- Value
-
containsKey
boolean containsKey(double q)
Contains operation for a key (slow: with a linear scan).- Parameters:
q- Key- Returns:
trueif the key is contained in the heap.
-
containsValue
boolean containsValue(long q)
Contains operation for a value (slow: with a linear scan).- Parameters:
q- Value- Returns:
trueif the value is contained in the heap.
-
poll
void poll()
Remove the first element.
-
clear
void clear()
Clear the heap contents.
-
size
int size()
Query the size.- Returns:
- Size
-
isEmpty
boolean isEmpty()
Is the heap empty?- Returns:
truewhen the size is 0.
-
unsortedIter
DoubleLongHeap.UnsortedIter unsortedIter()
Get an unsorted iterator to inspect the heap.- Returns:
- Iterator
-
-