TY - JOUR

T1 - All-Pairs Small-Stretch Paths

AU - Cohen, Edith

AU - Zwick, Uri

N1 - Funding Information:
Our algorithms are simpler, more efficient and more accurate than the previously best algorithms for finding small-stretch paths. Unlike all previous algorithms, our algorithms are not based on the construction of sparse spanners or sparse neighborhood covers. © 2001 Academic Press 1A preliminary version of this work appeared in the Proceedings of the 8th Annual ACM-SIAM Symposium on Discrete Algorithms, New Orleans, Louisiana, 1997, pp. 93–102. 2Work supported in part by The Basic Research Foundation administrated by the Israel Academy of Sciences and Humanities.

PY - 2001/2

Y1 - 2001/2

N2 - Let G = (V, E) be a weighted undirected graph. A path between u, v ∈ V is said to be of stretch t if its length is at most t times the distance between u and v in the graph. We consider the problem of finding small-stretch paths between all pairs of vertices in the graph G. It is easy to see that finding paths of stretch less than 2 between all pairs of vertices in an undirected graph with n vertices is at least as hard as the Boolean multiplication of two n × n matrices. We describe three algorithms for finding small-stretch paths between all pairs of vertices in a weighted graph with n vertices and m edges. The first algorithm, STRETCH2, runs in Õ(n3/2m1/2) time and finds stretch 2 paths. The second algorithm, STRETCH7/3, runs in Õ(n7/3) time and finds stretch 7/3 paths. Finally, the third algorithm, STRETCH3, runs in Õ(n2) and finds stretch 3 paths. Our algorithms are simpler, more efficient and more accurate than the previously best algorithms for finding small-stretch paths. Unlike all previous algorithms, our algorithms are not based on the construction of sparse spanners or sparse neigh-borhood covers.

AB - Let G = (V, E) be a weighted undirected graph. A path between u, v ∈ V is said to be of stretch t if its length is at most t times the distance between u and v in the graph. We consider the problem of finding small-stretch paths between all pairs of vertices in the graph G. It is easy to see that finding paths of stretch less than 2 between all pairs of vertices in an undirected graph with n vertices is at least as hard as the Boolean multiplication of two n × n matrices. We describe three algorithms for finding small-stretch paths between all pairs of vertices in a weighted graph with n vertices and m edges. The first algorithm, STRETCH2, runs in Õ(n3/2m1/2) time and finds stretch 2 paths. The second algorithm, STRETCH7/3, runs in Õ(n7/3) time and finds stretch 7/3 paths. Finally, the third algorithm, STRETCH3, runs in Õ(n2) and finds stretch 3 paths. Our algorithms are simpler, more efficient and more accurate than the previously best algorithms for finding small-stretch paths. Unlike all previous algorithms, our algorithms are not based on the construction of sparse spanners or sparse neigh-borhood covers.

UR - http://www.scopus.com/inward/record.url?scp=0003501564&partnerID=8YFLogxK

U2 - 10.1006/jagm.2000.1117

DO - 10.1006/jagm.2000.1117

M3 - ???researchoutput.researchoutputtypes.contributiontojournal.article???

AN - SCOPUS:0003501564

SN - 0196-6774

VL - 38

SP - 335

EP - 353

JO - Journal of Algorithms

JF - Journal of Algorithms

IS - 2

ER -