English
Related papers

Related papers: Fast and Powerful Hashing using Tabulation

200 papers

Hash-based sampling and estimation are common themes in computing. Using hashing for sampling gives us the coordination needed to compare samples from different sets. Hashing is also used when we want to count distinct elements. The quality…

Data Structures and Algorithms · Computer Science 2024-12-02 Anders Aamand , Ioana O. Bercea , Jakob Bæk Tejs Houen , Jonas Klausen , Mikkel Thorup

Random hashing can provide guarantees regarding the performance of data structures such as hash tables---even in an adversarial setting. Many existing families of hash functions are universal: given two data objects, the probability that…

Data Structures and Algorithms · Computer Science 2018-10-16 Dmytro Ivanchykhin , Sergey Ignatchenko , Daniel Lemire

We present an efficient lock-free algorithm for parallel accessible hash tables with open addressing, which promises more robust performance and reliability than conventional lock-based implementations. ``Lock-free'' means that it is…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Hui Gao , Jan Friso Groote , Wim H. Hesselink

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

Double hashing has recently found more common usage in schemes that use multiple hash functions. In double hashing, for an item $x$, one generates two hash values $f(x)$ and $g(x)$, and then uses combinations $(f(x) +k g(x)) \bmod n$ for…

Data Structures and Algorithms · Computer Science 2014-01-30 Michael Mitzenmacher

Concurrent hash tables are one of the most important concurrent data structures with numerous applications. Since hash table accesses can dominate the execution time of the overall application, we need implementations that achieve good…

Data Structures and Algorithms · Computer Science 2016-09-07 Tobias Maier , Peter Sanders , Roman Dementiev

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

Recent advances in random linear systems on finite fields have paved the way for the construction of constant-time data structures representing static functions and minimal perfect hash functions using less space with respect to existing…

Data Structures and Algorithms · Computer Science 2016-03-24 Marco Genuzio , Giuseppe Ottaviano , Sebastiano Vigna

Feature hashing, also known as {\em the hashing trick}, introduced by Weinberger et al. (2009), is one of the key techniques used in scaling-up machine learning algorithms. Loosely speaking, feature hashing uses a random sparse projection…

Machine Learning · Computer Science 2018-05-23 Casper Benjamin Freksen , Lior Kamma , Kasper Green Larsen

Supervised hashing aims to map the original features to compact binary codes that are able to preserve label based similarity in the Hamming space. Non-linear hash functions have demonstrated the advantage over linear ones due to their…

Computer Vision and Pattern Recognition · Computer Science 2016-11-17 Guosheng Lin , Chunhua Shen , Qinfeng Shi , Anton van den Hengel , David Suter

Suppose that we are to place $m$ balls into $n$ bins sequentially using the $d$-choice paradigm: For each ball we are given a choice of $d$ bins, according to $d$ hash functions $h_1,\dots,h_d$ and we place the ball in the least loaded of…

Data Structures and Algorithms · Computer Science 2018-04-26 Anders Aamand , Mathias Bæk Tejs Knudsen , Mikkel Thorup

The performance of a constraint model can often be improved by converting a subproblem into a single table constraint (referred to as tabulation). Finding subproblems to tabulate is traditionally a manual and time-intensive process, even…

In this paper we present a lock-free version of Hopscotch Hashing. Hopscotch Hashing is an open addressing algorithm originally proposed by Herlihy, Shavit, and Tzafrir, which is known for fast performance and excellent cache locality. The…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-11-11 Robert Kelly , Barak A. Pearlmutter , Phil Maguire

Cuckoo hashing is an efficient technique for creating large hash tables with high space utilization and guaranteed constant access times. There, each item can be placed in a location given by any one out of k different hash functions. In…

Data Structures and Algorithms · Computer Science 2013-10-11 Nikolaos Fountoulakis , Konstantinos Panagiotou , Angelika Steger

We present here new mechanisms for hashing data via binary embeddings. Contrary to most of the techniques presented before, the embedding matrix of our mechanism is highly structured. That enables us to perform hashing more efficiently and…

Data Structures and Algorithms · Computer Science 2015-05-14 Krzysztof Choromanski

Given a set $S$ of $n$ keys, a perfect hash function for $S$ maps the keys in $S$ to the first $m \geq n$ integers without collisions. It may return an arbitrary result for any key not in $S$ and is called minimal if $m = n$. The most…

Data Structures and Algorithms · Computer Science 2026-02-06 Hans-Peter Lehmann , Thomas Mueller , Rasmus Pagh , Giulio Ermanno Pibiri , Peter Sanders , Sebastiano Vigna , Stefan Walzer

While separate chaining is a common strategy for resolving collisions in a hash table taught in most textbooks, compact hashing is a less common technique for saving space when hashing integers whose domain is relatively small with respect…

Data Structures and Algorithms · Computer Science 2019-05-02 Dominik Köppl

In this paper we relate a number of parsing algorithms which have been developed in very different areas of parsing theory, and which include deterministic algorithms, tabular algorithms, and a parallel algorithm. We show that these…

cmp-lg · Computer Science 2008-02-03 Mark-Jan Nederhof

Symbolic regression encompasses a family of search algorithms that aim to discover the best fitting function for a set of data without requiring an a priori specification of the model structure. The most successful and commonly used…

Neural and Evolutionary Computing · Computer Science 2025-08-20 Bogdan Burlacu

We settle the question of tight thresholds for offline cuckoo hashing. The problem can be stated as follows: we have n keys to be hashed into m buckets each capable of holding a single key. Each key has k >= 3 (distinct) associated buckets…

Data Structures and Algorithms · Computer Science 2010-12-22 Martin Dietzfelbinger , Andreas Goerdt , Michael Mitzenmacher , Andrea Montanari , Rasmus Pagh , Michael Rink