Space Efficient Hash Tables with Worst Case Constant Access Time
@article{Fotakis2004SpaceEH, title={Space Efficient Hash Tables with Worst Case Constant Access Time}, author={Dimitris Fotakis and R. Pagh and Peter Sanders and Paul G. Spirakis}, journal={Theory of Computing Systems}, year={2004}, volume={38}, pages={229-248} }
Abstract
We generalize Cuckoo Hashing to d-ary Cuckoo
Hashing and show how this yields a simple hash table data structure that
stores n elements in (1 + ε)n memory cells, for any constant ε >
0. Assuming uniform hashing, accessing or deleting table entries takes at
most d=O (ln (1/ε)) probes and the expected amortized insertion
time is constant. This is the first dictionary that has worst case
constant access time and expected constant update time, works with
(1 + ε)n space, and supports…
150 Citations
History-Independent Cuckoo Hashing
- Computer ScienceICALP
- 2008
A practical history-independentdynamic dictionary based on cuckoo hashing is constructed, which enjoys most of the attractive properties of cucko hashing, in particular, no dynamic memory allocation is required, updates are performed in expected amortized constant time, and membership queries are performing in worst case constant time.
Backyard Cuckoo Hashing: Constant Worst-Case Operations with a Succinct Representation
- Computer Science2010 IEEE 51st Annual Symposium on Foundations of Computer Science
- 2010
This paper construction is a two-level variant of cuckoo hashing, augmented with a ``backyard'' that handles a large fraction of the elements, together with a de-amortized perfect hashing scheme for eliminating the dependency on $\boldsymbol{n}$ memory words, and guarantees constant-time operations in the worst case with high probability.
Linear probing with constant independence
- Computer Science, MathematicsSTOC '07
- 2007
It is shown in this paper that linear probing using a pairwise independent family may have expected logarithmic cost per operation, and it is shown that 5-wise independence is enough to ensure constant expected time per operation.
On the insertion time of random walk cuckoo hashing
- Computer ScienceSODA
- 2017
If the number of hash functions d ≥ dε = O(1), then the expected insertion time for Random Walk Insertion to add items when d’ > 2 is O(1) per item.
Insertion Time of Random Walk Cuckoo Hashing below the Peeling Threshold
- Computer ScienceArXiv
- 2022
This paper shows that random walk insertions into cuckoo hash tables take O (1) expected amortised time when any number k ≥ 3 of hash functions is used and the load factor is below the corresponding peeling threshold.
Linear Probing with Constant Independence
- Computer Science, MathematicsSIAM J. Comput.
- 2009
It is shown in this paper that linear probing using a pairwise independent family may have expected logarithmic cost per operation, and that 5-wise independence is enough to ensure constant expected time per operation.
Better GPU Hash Tables
- Computer ScienceArXiv
- 2021
This work revisits the problem of building static hash tables on the GPU and design and builds three bucketed hash tables that use different probing schemes that outperforms alternative methods that use power-of-two choices, iceberg hashing, and a cuckoo hash table that uses a bucket size one.
A Seven-Dimensional Analysis of Hashing Methods and its Implications on Query Processing
- Computer ScienceProc. VLDB Endow.
- 2015
It is shown that a right or wrong decision in picking the right hashing scheme and hash function combination may lead to significant difference in performance, and that hashing should be considered a white box before blindly using it in applications, such as query processing.
De-amortized Cuckoo Hashing: Provable Worst-Case Performance and Experimental Results
- Computer ScienceICALP
- 2009
The theoretical analysis and experimental results indicate that the scheme is highly efficient, and provides a practical alternative to the only other known approach for constructing dynamic dictionaries with such worst case guarantees, due to Dietzfelbinger and Meyer auf der Heide.
A further analysis of Cuckoo Hashing with a Stash and Random Graphs of Excess r
- Computer ScienceDiscret. Math. Theor. Comput. Sci.
- 2010
It is shown that the same bounds on the failure probability hold even without this search process and thus, the performance increases, and some explicit asymptotic approximations concerning the number of usual resp.
References
SHOWING 1-10 OF 46 REFERENCES
Uniform hashing in constant time and linear space
- Computer Science, MathematicsSTOC '03
- 2003
This paper presents an almost ideal solution to this problem: a hash function 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 O(n) words, which is optimal.
Dynamic perfect hashing: upper and lower bounds
- Computer Science[Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science
- 1988
An Omega (log n) lower bound is proved for the amortized worst-case time complexity of any deterministic algorithm in a class of algorithms encompassing realistic hashing-based schemes.
Multilevel adaptive hashing
- Computer ScienceSODA '90
- 1990
According to the analysis, with the Multilevel Hashing Algorithm it is possible to build a dictionary that is able to answer 20 parallel searches among 64,000 entries in less than 5 ps using relatively inexpensive hardware.
Optimal Arrangement of Keys in a Hash Table
- Computer ScienceJACM
- 1978
It is shown that arrangements minimizing either the average or worst-case number of probes required to retrieve any key in the table can be found using an algorithm for the assignment problem.
Simple Minimal Perfect Hashing in Less Space
- Mathematics, Computer ScienceESA
- 2001
A simple randomized algorithm that, given a set S ⊆ U of size n, works in O(n) expected time and computes a minimal perfect hash function for S whose representation is a table of at most (2+Ɛ)n integers in the range {0,.
Compact Hash Tables Using Bidirectional Linear Probing
- Computer ScienceIEEE Trans. Computers
- 1984
An algorithm is developed which reduces the memory requirements of hash tables. Thisis achieved by storing only a part of each key along with a few; ezra bits needed to ensure that all keys are…
Succinct Dynamic Dictionaries and Trees
- Computer ScienceICALP
- 2003
It is shown that a binary tree on n nodes, where each node has b = O(lg n)-bit data stored at it, can be maintained under node insertions while supporting navigation in O(1) time and updates in O((lg lg n)1+Ɛ) amortised time, for any constant Ɛ > 0.
Almost random graphs with simple hash functions
- Mathematics, Computer ScienceSTOC '03
- 2003
The main new technique is the combined analysis of the graph structure and the inner structure of the hash functions, as well as a new way of looking at the cycle structure of random (multi)graphs.
LOW REDUNDANCY IN STATIC DICTIONARIES WITH CONSTANT QUERY TIME
- Computer Science
- 2001
It is shown that on a unit cost RAM with word size Θ(log |U |), a static dictionary for n-element sets with constant worst case query time can be obtained using B+O(log log |U|)+o(n) bits of storage, where B e is the minimum number of bits needed to represent all nelement subsets of U.