Class IntPerfectHash


  • public class IntPerfectHash
    extends java.lang.Object
    A minimum perfect hash function tool. It needs about 2.2 bits per key.
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  IntPerfectHash.BitArray
      A helper class for bit arrays.
    • Constructor Summary

      Constructors 
      Constructor Description
      IntPerfectHash​(byte[] data)
      Create a hash object to convert keys to hashes.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static byte[] generate​(java.util.ArrayList<java.lang.Integer> list)
      Generate the minimal perfect hash function data from the given list.
      int get​(int x)
      Calculate the hash value for the given key.
      byte[] getData()
      Get the hash function description.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • IntPerfectHash

        public IntPerfectHash​(byte[] data)
        Create a hash object to convert keys to hashes.
        Parameters:
        data - the data returned by the generate method
    • Method Detail

      • getData

        public byte[] getData()
        Get the hash function description.
        Returns:
        the data
      • get

        public int get​(int x)
        Calculate the hash value for the given key.
        Parameters:
        x - the key
        Returns:
        the hash value
      • generate

        public static byte[] generate​(java.util.ArrayList<java.lang.Integer> list)
        Generate the minimal perfect hash function data from the given list.
        Parameters:
        list - the data
        Returns:
        the hash function description