In this paper an efficient open address hash function called exponential hashing is developed. The motivation for this hash function resulted from our ongoing efforts to apply dynamical systems theory to the study of hashing; however, the analysis conducted in this paper is primarily based on traditional number theory. Proofs of optimal table parameter choices are provided for a number of hash functions. We also demonstrate experimentally that exponential hashing essentially matches the performance of a widely-used optimal double hash function for uniform data distributions, and performs significantly better for nonuniform data distributions. We show that exponential hashing exhibits a higher integer Lyapunov exponent and entropy than double hashing for initial data probes, which offers one explanation for its improved performance on nonuniform data distributions.
[1]
Dietmar Saupe,et al.
Chaos and fractals - new frontiers of science
,
1992
.
[2]
Donald Ervin Knuth,et al.
The Art of Computer Programming
,
1968
.
[3]
Gregory L. Heileman.
Data structures, algorithms, and object-oriented programming
,
1996
.
[4]
Douglas R. Stinson,et al.
Cryptography: Theory and Practice
,
1995
.
[5]
W. W. Peterson,et al.
Addressing for Random-Access Storage
,
1957,
IBM J. Res. Dev..
[6]
C. E. SHANNON,et al.
A mathematical theory of communication
,
1948,
MOCO.