UNIFORM HASHING IN CONSTANT TIME AND OPTIMAL SPACE
Many algorithms and data structures employing hashing have been analyzed under the uniform hashing assumption, i.e., the assumption that hash functions behave like truly random functions. Starting with the discovery of universal hash functions, many researchers have studied to what extent this theor...
Saved in:
Published in | SIAM journal on computing Vol. 38; no. 1; pp. 85 - 96 |
---|---|
Main Authors | , |
Format | Journal Article |
Language | English |
Published |
Philadelphia, PA
Society for Industrial and Applied Mathematics
2008
|
Subjects | |
Online Access | Get full text |
Cover
Loading…
Summary: | Many algorithms and data structures employing hashing have been analyzed under the uniform hashing assumption, i.e., the assumption that hash functions behave like truly random functions. Starting with the discovery of universal hash functions, many researchers have studied to what extent this theoretical ideal can be realized by hash functions that do not take up too much space and can be evaluated quickly. In this paper we present an almost ideal solution to this problem: a hash function $h: U\rightarrow V$ that, on any set of $n$ inputs, behaves like a truly random function with high probability, can be evaluated in constant time on a RAM and can be stored in $(1+\epsilon)n\log |V| + O(n+\log\log |U|)$ bits. Here $\epsilon$ can be chosen to be any positive constant, so this essentially matches the entropy lower bound. For many hashing schemes this is the first hash function that makes their uniform hashing analysis come true, with high probability, without incurring overhead in time or space. |
---|---|
ISSN: | 0097-5397 1095-7111 |
DOI: | 10.1137/060658400 |