| Monotone minimal perfect hashing: searching a sorted table with O(1) accesses |
| Full text |
Pdf
(536 KB)
|
| Source
|
Symposium on Discrete Algorithms
archive
Proceedings of the Nineteenth Annual ACM -SIAM Symposium on Discrete Algorithms
table of contents
New York, New York
Pages 785-794
Year of Publication: 2009
|
|
Authors
|
|
| Publisher |
Society for Industrial and Applied Mathematics
Philadelphia, PA, USA
|
| Bibliometrics |
Downloads (6 Weeks): 7, Downloads (12 Months): 71, Citation Count: 0
|
|
|
ABSTRACT
A minimal perfect hash function maps a set S of n keys into the set {0, 1,..., n -- 1} bijectively. Classical results state that minimal perfect hashing is possible in constant time using a structure occupying space close to the lower bound of log e bits per element. Here we consider the problem of monotone minimal perfect hashing, in which the bijection is required to preserve the lexicographical ordering of the keys. A monotone minimal perfect hash function can be seen as a very weak form of index that provides ranking just on the set S (and answers randomly outside of S). Our goal is to minimise the description size of the hash function: we show that, for a set S of n elements out of a universe of 2w elements, O(n log log w) bits are sufficient to hash monotonically with evaluation time O(log w). Alternatively, we can get space O(n log w) bits with O(1) query time. Both of these data structures improve a straightforward construction with O(n log w) space and O(log w) query time. As a consequence, it is possible to search a sorted table with O(1) accesses to the table (using additional O(n log log w) bits). Our results are based on a structure (of independent interest) that represents a trie in a very compact way, but admits errors. As a further application of the same structure, we show how to compute the predecessor (in the sorted order of S) of an arbitrary element, using O(1) accesses in expectation and an index of O(n log w) bits, improving the trivial result of O(n w) bits. This implies an efficient index for searching a blocked memory.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
|
| |
3
|
J. L. Carter and M. N. Wegman. Universal classes of hash functions. J. Comput. Syst. Sci., 18:143--154, 1979.
|
 |
4
|
Larry Carter , Robert Floyd , John Gill , George Markowsky , Mark Wegman, Exact and approximate membership testers, Proceedings of the tenth annual ACM symposium on Theory of computing, p.59-65, May 01-03, 1978, San Diego, California, United States
[doi> 10.1145/800133.804332]
|
| |
5
|
|
| |
6
|
|
| |
7
|
|
| |
8
|
|
| |
9
|
|
 |
10
|
|
 |
11
|
|
| |
12
|
M. L. Fredman and J. Komlós. On the size of separating systems and families of perfect hash functions. SIAM J. Algebraic Discrete Methods, 5(1):61--68, 1984.
|
 |
13
|
|
| |
14
|
|
| |
15
|
|
| |
16
|
|
| |
17
|
|
| |
18
|
|
| |
19
|
|
| |
20
|
B. S. Majewski, N. C. Wormald, G. Havas, and Z. J. Czech. A family of perfect hashing methods. Comput. J., 39(6):547--554, 1996.
|
| |
21
|
|
| |
22
|
|
| |
23
|
E. Porat. An optimal bloom filter replacement based on matrix solving, 2008. arXiv:0804.1845v1.
|
 |
24
|
|
| |
25
|
|
| |
26
|
D. E. Willard. Log-logarithmic worst-case range queries are possible in space theta(n). Inf. Process. Lett., 17(2):81--84, 1983.
|
 |
27
|
|
|