it.unimi.dsi.sux4j.mph
Class RelativeTrieMonotoneMinimalPerfectHashFunction<T>
java.lang.Object
it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction<K>
it.unimi.dsi.sux4j.mph.AbstractHashFunction<T>
it.unimi.dsi.sux4j.mph.RelativeTrieMonotoneMinimalPerfectHashFunction<T>
- All Implemented Interfaces:
- Function<T,java.lang.Long>, Object2LongFunction<T>, java.io.Serializable
public class RelativeTrieMonotoneMinimalPerfectHashFunction<T>
- extends AbstractHashFunction<T>
- implements java.io.Serializable
A monotone minimal perfect hash implementation based on fixed-size bucketing that uses
a relative trie as a distributor.
- See Also:
- Serialized Form
Method Summary |
long |
getLong(java.lang.Object o)
|
static void |
main(java.lang.String[] arg)
|
long |
numBits()
|
int |
size()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
serialVersionUID
public static final long serialVersionUID
- See Also:
- Constant Field Values
RelativeTrieMonotoneMinimalPerfectHashFunction
public RelativeTrieMonotoneMinimalPerfectHashFunction(java.lang.Iterable<? extends T> elements,
TransformationStrategy<? super T> transform)
- Creates a new hollow-trie-based monotone minimal perfect hash function using the given
elements and transformation strategy.
- Parameters:
elements
- the elements among which the trie must be able to rank.transform
- a transformation strategy that must turn the elements in elements
into a list of
distinct, prefix-free, lexicographically increasing (in iteration order) bit vectors.
RelativeTrieMonotoneMinimalPerfectHashFunction
public RelativeTrieMonotoneMinimalPerfectHashFunction(java.lang.Iterable<? extends T> elements,
TransformationStrategy<? super T> transform,
int log2BucketSize)
- Creates a new hollow-trie-based monotone minimal perfect hash function using the given
elements, transformation strategy and bucket size.
This constructor is mainly for debugging and testing purposes.
- Parameters:
elements
- the elements among which the trie must be able to rank.transform
- a transformation strategy that must turn the elements in elements
into a list of
distinct, prefix-free, lexicographically increasing (in iteration order) bit vectors.log2BucketSize
- the logarithm of the bucket size.
getLong
public long getLong(java.lang.Object o)
- Specified by:
getLong
in interface Object2LongFunction<T>
size
public int size()
- Specified by:
size
in interface Function<T,java.lang.Long>
- Overrides:
size
in class AbstractHashFunction<T>
numBits
public long numBits()
main
public static void main(java.lang.String[] arg)
throws java.lang.NoSuchMethodException,
java.io.IOException,
JSAPException
- Throws:
java.lang.NoSuchMethodException
java.io.IOException
JSAPException