English
Related papers

Related papers: On the Optimal Time/Space Tradeoff for Hash Tables

200 papers

Despite being one of the oldest data structures in computer science, hash tables continue to be the focus of a great deal of both theoretical and empirical research. A central reason for this is that many of the fundamental properties that…

Data Structures and Algorithms · Computer Science 2023-10-24 Michael A. Bender , Alex Conway , Martín Farach-Colton , William Kuszmaul , Guido Tagliavini

A hash table is said to be open-addressed (or non-obliviously open-addressed) if it stores elements (and free slots) in an array with no additional metadata. Intuitively, open-addressed hash tables must incur a space-time tradeoff: The…

Data Structures and Algorithms · Computer Science 2025-03-19 Michael A. Bender , William Kuszmaul , Renfei Zhou

A dictionary data structure maintains a set of at most $n$ keys from the universe $[U]$ under key insertions and deletions, such that given a query $x \in [U]$, it returns if $x$ is in the set. Some variants also store values associated to…

Data Structures and Algorithms · Computer Science 2023-09-12 Tianxiao Li , Jingxun Liang , Huacheng Yu , Renfei Zhou

Undirected $st$-connectivity is important both for its applications in network problems, and for its theoretical connections with logspace complexity. Classically, a long line of work led to a time-space tradeoff of $T=\tilde{O}(n^2/S)$ for…

Quantum Physics · Physics 2024-03-29 Simon Apers , Stacey Jeffery , Galina Pass , Michael Walter

Hash tables are one of the most fundamental data structures in computer science, in both theory and practice. They are especially useful in external memory, where their query performance approaches the ideal cost of just one disk access.…

Data Structures and Algorithms · Computer Science 2008-11-20 Zhewei Wei , Ke Yi , Qin Zhang

In this paper, we design a new succinct static dictionary with worst-case constant query time. A dictionary data structure stores a set of key-value pairs with distinct keys in $[U]$ and values in $[\sigma]$, such that given a query $x\in…

Data Structures and Algorithms · Computer Science 2025-03-28 Yang Hu , Jingxun Liang , Huacheng Yu , Junkai Zhang , Renfei Zhou

This paper considers the basic question of how strong of a probabilistic guarantee can a hash table, storing $n$ $(1 + \Theta(1)) \log n$-bit key/value pairs, offer? Past work on this question has been bottlenecked by limitations of the…

Data Structures and Algorithms · Computer Science 2022-09-19 William Kuszmaul

Let $\mathcal{D}$ be a collection of $D$ documents, which are strings over an alphabet of size $\sigma$, of total length $n$. We describe a data structure that uses linear space and and reports $k$ most relevant documents that contain a…

Data Structures and Algorithms · Computer Science 2013-08-02 Gonzalo Navarro , Yakov Nekrich

Consistent hashing is a technique that can minimize key remapping when the number of hash buckets changes. The paper proposes a fast consistent hash algorithm (called power consistent hash) that has $O(1)$ expected time for key lookup,…

Data Structures and Algorithms · Computer Science 2023-12-29 Eric Leu

The retrieval problem is the problem of associating data with keys in a set. Formally, the data structure must store a function f: U ->{0,1}^r that has specified values on the elements of a given set S, a subset of U, |S|=n, but may have…

Data Structures and Algorithms · Computer Science 2008-03-27 Martin Dietzfelbinger , Rasmus Pagh

In memory-constrained algorithms we have read-only access to the input, and the number of additional variables is limited. In this paper we introduce the compressed stack technique, a method that allows to transform algorithms whose space…

Computational Geometry · Computer Science 2014-06-26 Luis Barba , Matias Korman , Stefan Langerman , Kunikiko Sadakane , Rodrigo Silveira

The online list labeling problem is an algorithmic primitive with a large literature of upper bounds, lower bounds, and applications. The goal is to store a dynamically-changing set of $n$ items in an array of $m$ slots, while maintaining…

Data Structures and Algorithms · Computer Science 2022-09-13 Michael A. Bender , Alex Conway , Martín Farach-Colton , Hanna Komlós , William Kuszmaul , Nicole Wein

Previous work on tabulation hashing by Patrascu and Thorup from STOC'11 on simple tabulation and from SODA'13 on twisted tabulation offered Chernoff-style concentration bounds on hash based sums, e.g., the number of balls/keys hashing to a…

Data Structures and Algorithms · Computer Science 2020-08-11 Anders Aamand , Jakob B. T. Knudsen , Mathias B. T. Knudsen , Peter M. R. Rasmussen , Mikkel Thorup

In the static retrieval problem, a data structure must answer retrieval queries mapping a set of $n$ keys in a universe $[U]$ to $v$-bit values. Information-theoretically, retrieval data structures can use as little as $nv$ bits of space.…

Data Structures and Algorithms · Computer Science 2025-10-22 Yang Hu , William Kuszmaul , Jingxun Liang , Huacheng Yu , Junkai Zhang , Renfei Zhou

Perfect hash functions can potentially be used to compress data in connection with a variety of data management tasks. Though there has been considerable work on how to construct good perfect hash functions, there is a gap between theory…

Data Structures and Algorithms · Computer Science 2007-05-23 Fabiano C. Botelho , Rasmus Pagh , Nivio Ziviani

Hash tables are a ubiquitous class of dictionary data structures. However, standard hash table implementations do not translate well into the external memory model, because they do not incorporate locality for insertions. Iacono and…

Data Structures and Algorithms · Computer Science 2018-05-25 Alex Conway , Martin Farach-Colton , Philip Shilane

A classic data structure problem is to preprocess a string T of length $n$ so that, given a query $q$, we can quickly find all substrings of T with Hamming distance at most $k$ from the query string. Variants of this problem have seen…

Data Structures and Algorithms · Computer Science 2026-04-03 Jackson Bibbens , Levi Borevitz , Samuel McCauley

The pairing heap is a simple "self-adjusting" implementation of a heap (priority queue). Inserting an item into a pairing heap or decreasing the key of an item takes O(1) time worst-case, as does melding two heaps. But deleting an item of…

Data Structures and Algorithms · Computer Science 2022-08-26 Corwin Sinnamon , Robert Tarjan

We extend the Faulty RAM model by Finocchi and Italiano (2008) by adding a safe memory of arbitrary size $S$, and we then derive tradeoffs between the performance of resilient algorithmic techniques and the size of the safe memory. Let…

Data Structures and Algorithms · Computer Science 2015-04-03 Lorenzo De Stefani , Francesco Silvestri

A Random Access query to a string $T\in [0..\sigma)^n$ asks for the character $T[i]$ at a given position $i\in [0..n)$. In $O(n\log\sigma)$ bits of space, this fundamental task admits constant-time queries. While this is optimal in the…

Data Structures and Algorithms · Computer Science 2026-05-13 Anouk Duyster , Tomasz Kociumaka
‹ Prev 1 2 3 10 Next ›