Approximate distance oracles
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 ( kmn 1/ k ) expected time, constructing a data structure of size O ( kn 1+1/ k ), such that any subsequent distance query can be answered, approximat...
Gespeichert in:
Veröffentlicht in: | Journal of the ACM 2005, Vol.52 (1), p.1-24 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | 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
(
kmn
1/
k
) expected time, constructing a data structure of size
O
(
kn
1+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, that is, the quotient obtained by dividing the estimated distance by the actual distance lies between 1 and
2k
−1. A 1963 girth conjecture of Erdós, implies that Ω(
n
1+1/
k
) space is needed in the worst case for any real stretch strictly smaller than 2
k
+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
(
n
1+1/
k
) space had a query time of Ω(
n
1/
k
).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. |
---|---|
ISSN: | 0004-5411 1557-735X |
DOI: | 10.1145/1044731.1044732 |