Class 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  
      • Fields inherited from class it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction

        defRetValue
    • 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.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
    • 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 in elements 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 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:
        java.io.IOException
    • Method Detail

      • getLong

        public long getLong​(java.lang.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​(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