惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

B
Blog RSS Feed
Jina AI
Jina AI
雷峰网
雷峰网
Blog — PlanetScale
Blog — PlanetScale
Hugging Face - Blog
Hugging Face - Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Last Week in AI
Last Week in AI
博客园 - 司徒正美
罗磊的独立博客
J
Java Code Geeks
Engineering at Meta
Engineering at Meta
WordPress大学
WordPress大学
Vercel News
Vercel News
A
About on SuperTechFans
I
InfoQ
D
DataBreaches.Net
爱范儿
爱范儿
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
U
Unit 42
aimingoo的专栏
aimingoo的专栏
宝玉的分享
宝玉的分享
P
Proofpoint News Feed
Microsoft Azure Blog
Microsoft Azure Blog
美团技术团队

math.CO updates on arXiv.org

Complement Submodular Information Measures for Balanced and Robust Data Selection A Proof of a Conjecture on Positive and Negative Square Energies of Unicyclic Graphs Laplacian Spectrum of the Weakly Zero-Divisor Graph of a Finite Commutative Ring An identity for second Eulerian numbers via lattice-point counting $t$-tone edge coloring of graphs Constructing Maximal Bumpless Pipedreams for Double Grothendieck Polynomials Mubayi's Polynomial-Ideal Conjecture and Cover-Ideal Turán Methods Implicit Binarization via Complex Phase Dynamics in Combinatorial Optimization The limits of Schur multipliers in Pólya conversion problems for the $q$-permanent function Universality theorems for generalized splines Framing Triangulations for Arbitrary Integer Flow Polytopes On the Common Generalization of Gentle Algebras and Framed Directed Acyclic Graphs The complexity of frugal digraph homomorphisms Chaotic and periodic behavior of jeu de taquin on infinite Young tableaux Enumerating Pattern Avoiding Parking Functions Incidence toric ideals and three-point functions Unique Winning Opening Move in Three-Row Chomp Strong majority colorings of graphs A Balancing Theorem for Spanning Trees of Rectangular Grid Graphs Spectral radius and edge-disjoint connected factors of graphs New invariants for rank metric codes, with applications to the classification of rank two semifields of order 256 Flexible DP-4-coloring of planar graphs without 4-cycles and intersecting triangles Balanced intersection size distributions in projective planes List Reconstruction Problem with List Size Two Is Dimensionality a Barrier for Retrieval Models? The INIEP: Irreducible and Positive Realizations The number of Pfaffian orientations on punctured polygonally cellulated surfaces Explicit Construction of Polytopes whose Ehrhart Polynomials Realize any Given Sign Pattern Finite-state enumeration of adjacency-constrained 132-avoiding permutations AMDS and quantum AMDS Constacyclic codes of length $4p^ς$ over $\mathbb{F}_{{p}^{m}}$
Linear Probing Revisited: Tombstones Mark the Death of Pr...
Michael A. Bender, Bradley C. Kuszmaul, William Kuszmaul · 2021-07-03 · via math.CO updates on arXiv.org

First introduced in 1954, linear probing is one of the oldest data structures in computer science, and due to its unrivaled data locality, it continues to be one of the fastest hash tables in practice. It is widely believed and taught, however, that linear probing should never be used at high load factors; this is because primary-clustering effects cause insertions at load factor $1 - 1 /x$ to take expected time $Θ(x^2)$ (rather than the ideal $Θ(x)$). The dangers of primary clustering, first discovered by Knuth in 1963, have been taught to generations of computer scientists, and have influenced the design of some of many widely used hash tables. We show that primary clustering is not a foregone conclusion. We demonstrate that small design decisions in how deletions are implemented have dramatic effects on the asymptotic performance of insertions, so that, even if a hash table operates continuously at a load factor $1 - Θ(1/x)$, the expected amortized cost per operation is $\tilde{O}(x)$. This is because tombstones created by deletions actually cause an anti-clustering effect that combats primary clustering. We also present a new variant of linear probing (which we call graveyard hashing) that completely eliminates primary clustering on \emph{any} sequence of operations: if, when an operation is performed, the current load factor is $1 - 1/x$ for some $x$, then the expected cost of the operation is $O(x)$. One corollary is that, in the external-memory model with a data blocks of size $B$, graveyard hashing offers the following remarkable guarantee: at any load factor $1 - 1/x$ satisfying $x = o(B)$, graveyard hashing achieves $1 + o(1)$ expected block transfers per operation. Past external-memory hash tables have only been able to offer a $1 + o(1)$ guarantee when the block size $B$ is at least $Ω(x^2)$.