Class HollowTrieDistributorMonotoneMinimalPerfectHashFunction<T>

java.lang.Object
it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction<T>
it.unimi.dsi.sux4j.mph.AbstractHashFunction<T>
it.unimi.dsi.sux4j.mph.HollowTrieDistributorMonotoneMinimalPerfectHashFunction<T>
All Implemented Interfaces:
it.unimi.dsi.fastutil.Function<T,Long>, it.unimi.dsi.fastutil.objects.Object2LongFunction<T>, it.unimi.dsi.fastutil.Size64, Serializable, Function<T,Long>, ToLongFunction<T>

public class HollowTrieDistributorMonotoneMinimalPerfectHashFunction<T> extends AbstractHashFunction<T> implements it.unimi.dsi.fastutil.Size64, Serializable
A monotone minimal perfect hash implementation based on fixed-size bucketing that uses a hollow trie as a distributor.
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final long
     

    Fields inherited from class it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction

    defRetValue
  • Constructor Summary

    Constructors
    Constructor
    Description
    HollowTrieDistributorMonotoneMinimalPerfectHashFunction(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(Iterable<? extends T> elements, it.unimi.dsi.bits.TransformationStrategy<? super T> transform, File tempDir)
    Creates a new hollow-trie-based monotone minimal perfect hash function using the given elements, transformation strategy, and temporary directory.
  • Method Summary

    Modifier and Type
    Method
    Description
    long
     
    static void
    main(String[] arg)
     
    long
     
    long
     

    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.Function

    apply, clear

    Methods inherited from interface java.util.function.Function

    compose

    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

    Methods inherited from interface it.unimi.dsi.fastutil.Size64

    size
  • Field Details

  • Constructor Details

    • HollowTrieDistributorMonotoneMinimalPerfectHashFunction

      public HollowTrieDistributorMonotoneMinimalPerfectHashFunction(Iterable<? extends T> elements, it.unimi.dsi.bits.TransformationStrategy<? super T> transform) throws 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 in elements into a list of distinct, prefix-free, lexicographically increasing (in iteration order) bit vectors.
      Throws:
      IOException
    • HollowTrieDistributorMonotoneMinimalPerfectHashFunction

      public HollowTrieDistributorMonotoneMinimalPerfectHashFunction(Iterable<? extends T> elements, it.unimi.dsi.bits.TransformationStrategy<? super T> transform, File tempDir) throws 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 in elements 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 the HollowTrieDistributor, or null for the default temporary directory.
      Throws:
      IOException
  • Method Details

    • getLong

      public long getLong(Object o)
      Specified by:
      getLong in interface it.unimi.dsi.fastutil.objects.Object2LongFunction<T>
    • size64

      public long size64()
      Specified by:
      size64 in interface it.unimi.dsi.fastutil.Size64
      Overrides:
      size64 in class AbstractHashFunction<T>
    • numBits

      public long numBits()
    • main

      public static void main(String[] arg) throws NoSuchMethodException, IOException, com.martiansoftware.jsap.JSAPException
      Throws:
      NoSuchMethodException
      IOException
      com.martiansoftware.jsap.JSAPException