public class FixedCapacityIntDoubleMinHeap extends Object implements Int2DoubleMapEntryIterable
Constructor and Description |
---|
FixedCapacityIntDoubleMinHeap(int capacity)
Initialize the heap with desired capacity
|
Modifier and Type | Method and Description |
---|---|
void |
add(int key,
double value)
Add a key value pair
|
void |
clear()
Clear the heap
|
protected int |
compare(int key1,
double value1,
int key2,
double value2)
Comapre two (key, value) entries
|
void |
forEachIntDouble(IntDoubleConsumer f)
Traverse all elements of the heap, calling given function on each element.
|
boolean |
forEachWhileIntDouble(IntDoublePredicate f)
Traverse all elements of the heap, calling given function on each element,
or until predicate returns false.
|
int |
getCapacity()
Get capacity of the heap
|
int |
getMinKey() |
double |
getMinValue() |
boolean |
isEmpty()
Check if the heap is empty
|
it.unimi.dsi.fastutil.objects.ObjectIterator<it.unimi.dsi.fastutil.ints.Int2DoubleMap.Entry> |
iterator()
Get the iterator.
|
static FixedCapacityIntDoubleMinHeap |
read(FixedCapacityIntDoubleMinHeap heap,
DataInput in)
Deserializes an object from data input.
|
void |
removeMin()
Removes the (key, value) pair that corresponds to the minimum value
currently in the heap.
|
int |
size()
Get the size of this iterable
|
static void |
write(FixedCapacityIntDoubleMinHeap heap,
DataOutput out)
Serializes an object into data output.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
forEach, spliterator
public FixedCapacityIntDoubleMinHeap(int capacity)
capacity
- Capacitypublic void clear()
public void add(int key, double value)
key
- Keyvalue
- Valuepublic int getMinKey()
NoSuchElementException
- if the heap is empty.public double getMinValue()
NoSuchElementException
- if the heap is empty.public void removeMin()
protected int compare(int key1, double value1, int key2, double value2)
key1
- First keyvalue1
- First valuekey2
- Second keyvalue2
- Second valuepublic it.unimi.dsi.fastutil.objects.ObjectIterator<it.unimi.dsi.fastutil.ints.Int2DoubleMap.Entry> iterator()
Int2DoubleMapEntryIterable
iterator
in interface it.unimi.dsi.fastutil.objects.ObjectIterable<it.unimi.dsi.fastutil.ints.Int2DoubleMap.Entry>
iterator
in interface Iterable<it.unimi.dsi.fastutil.ints.Int2DoubleMap.Entry>
iterator
in interface Int2DoubleMapEntryIterable
public int size()
Int2DoubleMapEntryIterable
size
in interface Int2DoubleMapEntryIterable
public boolean isEmpty()
public int getCapacity()
public static void write(FixedCapacityIntDoubleMinHeap heap, DataOutput out) throws IOException
heap
- Object instance to serializeout
- Data outputIOException
public static FixedCapacityIntDoubleMinHeap read(FixedCapacityIntDoubleMinHeap heap, DataInput in) throws IOException
heap
- Object to reuse if possiblein
- Data inputIOException
public void forEachIntDouble(IntDoubleConsumer f)
f
- Function to call on each element.public boolean forEachWhileIntDouble(IntDoublePredicate f)
f
- Function to call on each element.Copyright © 2011-2020 The Apache Software Foundation. All Rights Reserved.