Package it.unimi.dsi.sux4j.mph
Class HollowTrieDistributorMonotoneMinimalPerfectHashFunction<T>
- java.lang.Object
-
- it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction<K>
-
- it.unimi.dsi.sux4j.mph.AbstractHashFunction<T>
-
- it.unimi.dsi.sux4j.mph.HollowTrieDistributorMonotoneMinimalPerfectHashFunction<T>
-
- All Implemented Interfaces:
it.unimi.dsi.fastutil.Function<T,java.lang.Long>
,it.unimi.dsi.fastutil.objects.Object2LongFunction<T>
,it.unimi.dsi.fastutil.Size64
,java.io.Serializable
,java.util.function.Function<T,java.lang.Long>
,java.util.function.ToLongFunction<T>
public class HollowTrieDistributorMonotoneMinimalPerfectHashFunction<T> extends AbstractHashFunction<T> implements it.unimi.dsi.fastutil.Size64, java.io.Serializable
A monotone minimal perfect hash implementation based on fixed-size bucketing that uses a hollow trie as a distributor.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static long
serialVersionUID
-
Constructor Summary
Constructors Constructor Description HollowTrieDistributorMonotoneMinimalPerfectHashFunction(java.lang.Iterable<? extends T> elements, it.unimi.dsi.bits.TransformationStrategy<? super T> transform)
Creates a new hollow-trie-based monotone minimal perfect hash function using the given elements and transformation strategy, using the default temporary directory.HollowTrieDistributorMonotoneMinimalPerfectHashFunction(java.lang.Iterable<? extends T> elements, it.unimi.dsi.bits.TransformationStrategy<? super T> transform, java.io.File tempDir)
Creates a new hollow-trie-based monotone minimal perfect hash function using the given elements, transformation strategy, and temporary directory.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description long
getLong(java.lang.Object o)
static void
main(java.lang.String[] arg)
long
numBits()
long
size64()
-
Methods inherited from class it.unimi.dsi.sux4j.mph.AbstractHashFunction
containsKey, size
-
Methods inherited from class it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction
defaultReturnValue, defaultReturnValue
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface it.unimi.dsi.fastutil.objects.Object2LongFunction
andThen, andThenByte, andThenChar, andThenDouble, andThenFloat, andThenInt, andThenLong, andThenObject, andThenReference, andThenShort, applyAsLong, composeByte, composeChar, composeDouble, composeFloat, composeInt, composeLong, composeObject, composeReference, composeShort, get, getOrDefault, getOrDefault, put, put, remove, removeLong
-
-
-
-
Field Detail
-
serialVersionUID
public static final long serialVersionUID
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
HollowTrieDistributorMonotoneMinimalPerfectHashFunction
public HollowTrieDistributorMonotoneMinimalPerfectHashFunction(java.lang.Iterable<? extends T> elements, it.unimi.dsi.bits.TransformationStrategy<? super T> transform) throws java.io.IOException
Creates a new hollow-trie-based monotone minimal perfect hash function using the given elements and transformation strategy, using the default temporary directory.- Parameters:
elements
- the elements among which the trie must be able to rank.transform
- a transformation strategy that must turn the elements inelements
into a list of distinct, prefix-free, lexicographically increasing (in iteration order) bit vectors.- Throws:
java.io.IOException
-
HollowTrieDistributorMonotoneMinimalPerfectHashFunction
public HollowTrieDistributorMonotoneMinimalPerfectHashFunction(java.lang.Iterable<? extends T> elements, it.unimi.dsi.bits.TransformationStrategy<? super T> transform, java.io.File tempDir) throws java.io.IOException
Creates a new hollow-trie-based monotone minimal perfect hash function using the given elements, transformation strategy, and temporary directory.- Parameters:
elements
- the elements among which the trie must be able to rank.transform
- a transformation strategy that must turn the elements inelements
into a list of distinct, prefix-free, lexicographically increasing (in iteration order) bit vectors.tempDir
- a directory for the temporary files created during construction by theHollowTrieDistributor
, ornull
for the default temporary directory.- Throws:
java.io.IOException
-
-
Method Detail
-
getLong
public long getLong(java.lang.Object o)
- Specified by:
getLong
in interfaceit.unimi.dsi.fastutil.objects.Object2LongFunction<T>
-
size64
public long size64()
- Specified by:
size64
in interfaceit.unimi.dsi.fastutil.Size64
- Overrides:
size64
in classAbstractHashFunction<T>
-
numBits
public long numBits()
-
main
public static void main(java.lang.String[] arg) throws java.lang.NoSuchMethodException, java.io.IOException, com.martiansoftware.jsap.JSAPException
- Throws:
java.lang.NoSuchMethodException
java.io.IOException
com.martiansoftware.jsap.JSAPException
-
-