Class ZFastTrieDistributorMonotoneMinimalPerfectHashFunction<T>

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

public class ZFastTrieDistributorMonotoneMinimalPerfectHashFunction<T> extends AbstractHashFunction<T> implements Serializable
A monotone minimal perfect hash implementation based on fixed-size bucketing that uses a z-fast trie as a distributor.

See the package overview for a comparison with other implementations. Similarly to a GOV3Function, an instance of this class may be signed.

See Also:
  • Field Details

    • serialVersionUID

      public static final long serialVersionUID
      See Also:
    • signatureMask

      protected final long signatureMask
      The mask to compare signatures, or zero for no signatures.
    • signatures

      protected final LongBigList signatures
      The signatures.
  • Constructor Details

    • ZFastTrieDistributorMonotoneMinimalPerfectHashFunction

      protected ZFastTrieDistributorMonotoneMinimalPerfectHashFunction(Iterable<? extends T> keys, TransformationStrategy<? super T> transform, int log2BucketSize, int signatureWidth, File tempDir) throws IOException
      Creates a new monotone minimal perfect hash function based on a z-fast trie distributor using the given keys, transformation strategy and bucket size.
      Parameters:
      keys - the keys among which the trie must be able to rank.
      transform - a transformation strategy that must turn the keys into a list of distinct, prefix-free, lexicographically increasing (in iteration order) bit vectors.
      log2BucketSize - the logarithm of the bucket size, or -1 for the default value.
      signatureWidth - a signature width, or 0 for no signature.
      tempDir - a temporary directory for the store files, or null for the standard temporary directory.
      Throws:
      IOException
  • Method Details