./devel/mph, Minimal perfect hashing functionality

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: pkgsrc-2010Q2, Version: 1.2, Package name: mph-1.2, Maintainer: pkgsrc-users

The program mph tries to generate an order preserving minimal perfect
hashing (MPH) function for the set of keys, one per line, on stdin.
Each key can be at most 4095 characters long (see keys.h to increase
this limit), and the keys must be unique. If mph terminates, it emits
a language independent binary or text representation of the MPH
function on stdout. To generate a usable hash function, this output
should be fed to a language dependent filter, like emitc.

e.g.
% mph <foo | emitc >hash.c

The algorithm used by mph is probabilistic - it iterates until it
finds a MPH function. For each failed iteration, it prints a
(cryptic) reason on stderr. There is no no guarantee that mph will
terminate. In practice this is unlikely, unless the constants
specified with options -c or -m are too small (see below).


Master sites:

SHA1: 05da8d39b27d5b1d42c52d825f4d2196711a8df5
RMD160: 061e85fd36f52774135301abc55c42e75c305b7a
Filesize: 22.229 KB

Version history: (Expand)