## Abstract

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, STRETCH_{2}, runs in Ō(n^{3/2}m^{1/2}) time and finds stretch 2 paths. The second algorithm, STRETCH_{7/3}, runs in Ō(n^{7/3}) time and finds stretch 7/3 paths. Finally, the third algorithm, STRETCH_{3}, runs in Ō(n^{2}) 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 neighbourhood covers.

Original language | English |
---|---|

Pages | 93-102 |

Number of pages | 10 |

State | Published - 1997 |

Externally published | Yes |

Event | Proceedings of the 1996 8th Annual ACM-SIAM Symposium on Discrete Algorithms - New Orleans, LA, USA Duration: 5 Jan 1997 → 7 Jan 1997 |

### Conference

Conference | Proceedings of the 1996 8th Annual ACM-SIAM Symposium on Discrete Algorithms |
---|---|

City | New Orleans, LA, USA |

Period | 5/01/97 → 7/01/97 |