Issue No. 02 - April (1994 vol. 6)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/69.277768
<p>Many current perfect hashing algorithms suffer from the problem of pattern collisions. In this paper, a perfect hashing technique that uses array-based tries and a simple sparse matrix packing algorithm is introduced. This technique eliminates all pattern collisions, and, because of this, it can be used to form ordered minimal perfect hashing functions on extremely large word lists. This algorithm is superior to other known perfect hashing functions for large word lists in terms of function building efficiency, pattern collision avoidance, and retrieval function complexity. It has been successfully used to form an ordered minimal perfect hashing function for the entire 24481 element Unix word list without resorting to segmentation. The item lists addressed by the perfect hashing function formed can be ordered in any manner, including alphabetically, to easily allow other forms of access to the same list.</p>
file organisation; Unix; list processing; computational complexity; sparse matrix packing algorithm; retrieval function complexity; perfect hashing algorithms; array-based tries; Unix word list; large word lists; function building efficiency; pattern collision avoidance; ordered minimal perfect hashing function; item lists; ordering; sparse array packing
A. Tharp and M. Brain, "Using Tries to Eliminate Pattern Collisions in Perfect Hashing," in IEEE Transactions on Knowledge & Data Engineering, vol. 6, no. , pp. 239-247, 1994.