node package manager
It’s your turn. Help us improve JavaScript. Take the 2017 JavaScript Ecosystem Survey »



A perfect minimal hash function generator

A perfect hash function for a set S is a hash function that maps distinct elements in S to a set of integers, with no collisions.

A minimal perfect hash function also yields a compact hash table, without any vacant slots.

The generator here is a port of Steve Hanov's perfect minimal hash generator.


npm install --save perfect

Usage example

var perfect = require('perfect');

var dict = { a: 'a', b: 'b', c: 'c', d: 'd' },
    tables = perfect.create(dict);

Object.keys(dict).forEach(function(key) {
  console.log('key: ' + key + ' value: ' +  perfect.lookup( tables[0], tables[1], key));