public class FixedCapacityIntLongMinHeap extends Object implements Int2LongMapEntryIterable
Constructor and Description |
---|
FixedCapacityIntLongMinHeap(int capacity)
Initialize the heap with desired capacity
|
Modifier and Type | Method and Description |
---|---|
void |
add(int key,
long value)
Add a key value pair
|
void |
clear()
Clear the heap
|
protected int |
compare(int key1,
long value1,
int key2,
long value2)
Comapre two (key, value) entries
|
void |
forEachIntLong(IntLongConsumer f)
Traverse all elements of the heap, calling given function on each element.
|
boolean |
forEachWhileIntLong(IntLongPredicate 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() |
long |
getMinValue() |
boolean |
isEmpty()
Check if the heap is empty
|
it.unimi.dsi.fastutil.objects.ObjectIterator<it.unimi.dsi.fastutil.ints.Int2LongMap.Entry> |
iterator()
Get the iterator.
|
static FixedCapacityIntLongMinHeap |
read(FixedCapacityIntLongMinHeap 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(FixedCapacityIntLongMinHeap heap,
DataOutput out)
Serializes an object into data output.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
forEach, spliterator
public FixedCapacityIntLongMinHeap(int capacity)
capacity
- Capacitypublic void clear()
public void add(int key, long value)
key
- Keyvalue
- Valuepublic int getMinKey()
NoSuchElementException
- if the heap is empty.public long getMinValue()
NoSuchElementException
- if the heap is empty.public void removeMin()
protected int compare(int key1, long value1, int key2, long value2)
key1
- First keyvalue1
- First valuekey2
- Second keyvalue2
- Second valuepublic it.unimi.dsi.fastutil.objects.ObjectIterator<it.unimi.dsi.fastutil.ints.Int2LongMap.Entry> iterator()
Int2LongMapEntryIterable
iterator
in interface it.unimi.dsi.fastutil.objects.ObjectIterable<it.unimi.dsi.fastutil.ints.Int2LongMap.Entry>
iterator
in interface Iterable<it.unimi.dsi.fastutil.ints.Int2LongMap.Entry>
iterator
in interface Int2LongMapEntryIterable
public int size()
Int2LongMapEntryIterable
size
in interface Int2LongMapEntryIterable
public boolean isEmpty()
public int getCapacity()
public static void write(FixedCapacityIntLongMinHeap heap, DataOutput out) throws IOException
heap
- Object instance to serializeout
- Data outputIOException
public static FixedCapacityIntLongMinHeap read(FixedCapacityIntLongMinHeap heap, DataInput in) throws IOException
heap
- Object to reuse if possiblein
- Data inputIOException
public void forEachIntLong(IntLongConsumer f)
f
- Function to call on each element.public boolean forEachWhileIntLong(IntLongPredicate f)
f
- Function to call on each element.Copyright © 2011-2020 The Apache Software Foundation. All Rights Reserved.