The soft heap: an approximate priority queue with optimal error rate

  title={The soft heap: an approximate priority queue with optimal error rate},
  author={Bernard Chazelle},
  journal={J. ACM},
  • B. Chazelle
  • Published 1 November 2000
  • Computer Science
  • J. ACM
A simple variant of a priority queue, called a soft heap, is introduced. The data structure supports the usual operations: insert, delete, meld, and findmin. Its novelty is to beat the logarithmic bound on the complexity of a heap in a comparison-based model. To break this information-theoretic barrier, the entropy of the data structure is reduced by artifically raising the values of certain keys. Given any mixed sequence of n operations, a soft heap with error rate ε (for any 0 < ε ≤ 1/2… 

Figures from this paper

A simpler implementation and analysis of Chazelle's soft heaps

A simpler and more direct implementation of soft heaps in which each priority queue is composed of a collection of standard binary trees is described, which has the advantage that no clean-up operations similar to the ones used in Chazelle's implementation are required.

Soft Heaps Simplified

A simplified implementation of soft heaps that uses less space and avoids Chazelle's dismantling operations is given and an amortized time bound of $O(\lg \frac{1}{\varepsilon})$ for each deleti...

A Selectable Sloppy Heap

A data structure called selectable sloppy heap that handles a dynamic version in which upon request a new element is inserted or an element of a prescribed quantile group is deleted from the data structure, which is the first result of this kind accommodating both insertion and deletion in constant time.

External Memory Soft Heap, and Hard Heap, a Meldable Priority Queue

An external memory version of soft heap that is presented, which supports Insert, Findmin, Deletemin and Meld operations and guarantees that the number of corrupt elements in it is never more than eN, where N is the total number of items inserted in it, and e is a parameter of it called the error-rate.

SprayLists : Provably Correct Approximate Priority Queues in a Shared Memory Setting

  • Jerry Li
  • Computer Science, Mathematics
  • 2013
An important data structure well understood in sequential settings is the priority queue, which supports the following three operations: insert(x), which inserts an item with priority x, delete(x),

Soft Sequence Heaps

The main contribution of this paper is an alternative soft heap implementation based on merging sorted sequences, with time bounds matching those of Chazelle's soft heaps, which is based on ternary trees instead of binary trees and matches the time bounds of Kaplan et al.

Selectable Heaps and Their Application to Lazy Search Trees

The presented data structure uses soft heaps of Chazelle, biased search trees, and efficient priority queues in a non-trivial way, approaching the theoretically-best data structure for ordered data.

Efficient Algorithms and Data Structures for Massive Data Sets

  • Alka
  • Computer Science
  • 2010
This thesis proposes two variants of the W-Stream model, and design algorithms for the maximal independent set, vertex-colouring, and planar graph single source shortest paths problems on those models.

Selectable Heaps and Optimal Lazy Search Trees

The presented data structure makes fundamental use of soft heaps, biased search trees, and efficient priority queues, approaching the theoretically-best data structure for ordered data.

2 Dynamic Ordered Sets with Approximate Queries , Approximate Heaps & Soft Heaps 1

This work considers word RAM data structures for maintaining ordered sets of integers whose select and rank operations are allowed to return approximate results, and proves the optimality of all the data structures presented, either through matching cell-probe lower bounds, or through equivalences to well studied static problems.



Fibonacci heaps and their uses in improved network optimization algorithms

Using F-heaps, a new data structure for implementing heaps that extends the binomial queues proposed by Vuillemin and studied further by Brown, the improved bound for minimum spanning trees is the most striking.

A minimum spanning tree algorithm with inverse-Ackermann type complexity

A deterministic algorithm for computing a minimum spanning tree of a connected graph that uses pointers, not arrays, and it makes no numeric assumptions on the edge costs.

A data structure for manipulating priority queues

A data structure is described which can be used for representing a collection of priority queues. The primitive operations are insertion, deletion, union, update, and search for an item of earliest

Time Bounds for Selection


  • 1027