An optimal algorithm for the distinct elements problem

By Daniel M. Kane, Jelani Nelson, David P. Woodruff. 2010

376 citations recorded by the source corpus.

We give the first optimal algorithm for estimating the number of distinct elements in a data stream, closing a long line of theoretical research on this problem begun by Flajolet and Martin in their seminal paper in FOCS 1983. This problem has applications to query optimization, Internet routing, network topology, and data mining. For a stream of indices in {1,...,n}, our algorithm computes a (1 ± ε)-approximation using an optimal O(1/ε-2 + log(n)) bits of space with 2/3 success probability, where 0<ε<1 is given. This probability can be amplified by independent repetition. Furthermore, our algorithm processes each stream update in O(1) worst-case time, and can report an estimate at any point midstream in O(1) worst-case time, thus settling both the space and time complexities simultaneously. We also give an algorithm to estimate the Hamming norm of a stream, a generalization of the number of distinct elements, which is useful in data cleaning, packet tracing, and database auditing. Our algorithm uses nearly optimal space, and has optimal O(1) update and reporting times.

Subfields: Artificial Intelligence, Computer Networks and Communications, Signal Processing

How researchers see this paper

The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.

In Artificial Intelligence

  1. Ravi Kumar
  2. Badih Ghazi
  3. Pasin Manurangsi
  4. Rasmus Pagh
  5. Gregory Valiant
  6. Andrew McGregor
  7. S. Muthu Muthukrishnan
  8. Paul Valiant

In Computer Networks and Communications

  1. Andrew McGregor
  2. S. Muthu Muthukrishnan
  3. Ravi Kumar
  4. Sudipto Guha
  5. Sergey Yekhanin
  6. Rasmus Pagh
  7. Badih Ghazi
  8. Gregory Valiant

In Signal Processing

  1. Ravi Kumar
  2. S. Muthu Muthukrishnan
  3. Andrew McGregor
  4. Badih Ghazi
  5. Gregory Valiant
  6. Lijie Chen
  7. Pasin Manurangsi
  8. Sudipto Guha

Citations in the corpus