Approximate distance oracles

M. Thorup*, U. Zwick

*Corresponding author for this work

Research output: Contribution to journalConference articlepeer-review

178 Scopus citations

Abstract

Let G = (V, E) be an undirected weighted graph with |V| = n and |E| =m. Let k ≥ 1 be an integer. We show that G = (V, E) can be preprocessed in O(kmn1/k) expected time, constructing a data structure of size O(kn1+1/k), such that any subsequent distance query can be answered, approximately, in O(k) time. The approximate distance returned is of stretch at most 2k - 1, i.e., the quotient obtained by dividing the estimated distance by the actual distance lies between 1 and 2k - 1. We show that a 1963 girth conjecture of Erdos, implies that Ω(n1+1/k) space is needed in the worst case for any real stretch strictly smaller than 2k + 1. The space requirement of our algorithm is, therefore, essentially optimal. The most impressive feature of our data structure is its constant query time, hence the name "oracle". Previously, data structures that used only O(n1+1/k) space had a query time of Ω(n1/k) and a slightly larger, non-optimal, s tretch. Our algorithms are extremely simple and easy to implement efficiently. They also provide faster constructions of sparse spanners of weighted graphs, and improved tree covers and distance labelings of weighted or unweighted graphs.

Original languageEnglish
Pages (from-to)183-192
Number of pages10
JournalConference Proceedings of the Annual ACM Symposium on Theory of Computing
DOIs
StatePublished - 2001
Externally publishedYes
Event33rd Annual ACM Symposium on Theory of Computing - Creta, Greece
Duration: 6 Jul 20018 Jul 2001

Fingerprint

Dive into the research topics of 'Approximate distance oracles'. Together they form a unique fingerprint.

Cite this