Fibonacci heaps and their uses in improved network optimization algorithms
Journal of the ACM (JACM)
SIAM Journal on Computing
All-Pairs Almost Shortest Paths
SIAM Journal on Computing
Vickrey Prices and Shortest Paths: What is an Edge Worth?
FOCS '01 Proceedings of the 42nd IEEE symposium on Foundations of Computer Science
On the difficulty of some shortest path problems
ACM Transactions on Algorithms (TALG)
On the K-simple shortest paths problem in weighted directed graphs
SODA '07 Proceedings of the eighteenth annual ACM-SIAM symposium on Discrete algorithms
Improved distance sensitivity oracles via random sampling
Proceedings of the nineteenth annual ACM-SIAM symposium on Discrete algorithms
A near-linear time algorithm for computing replacement paths in planar directed graphs
Proceedings of the nineteenth annual ACM-SIAM symposium on Discrete algorithms
SODA '09 Proceedings of the twentieth Annual ACM-SIAM Symposium on Discrete Algorithms
Dual-failure distance and connectivity oracles
SODA '09 Proceedings of the twentieth Annual ACM-SIAM Symposium on Discrete Algorithms
Improved algorithms for the k simple shortest paths and the replacement paths problems
Information Processing Letters
Replacement paths and k simple shortest paths in unweighted directed graphs
ICALP'05 Proceedings of the 32nd international conference on Automata, Languages and Programming
An experimental study on approximating K shortest simple paths
ESA'11 Proceedings of the 19th European conference on Algorithms
Single source distance oracle for planar digraphs avoiding a failed node or link
Proceedings of the twenty-third annual ACM-SIAM symposium on Discrete Algorithms
Proceedings of the twenty-second annual ACM-SIAM symposium on Discrete Algorithms
Replacement paths and k simple shortest paths in unweighted directed graphs
ACM Transactions on Algorithms (TALG)
Replacement Paths and Distance Sensitivity Oracles via Fast Matrix Multiplication
ACM Transactions on Algorithms (TALG)
Fast approximation algorithms for the diameter and radius of sparse graphs
Proceedings of the forty-fifth annual ACM symposium on Theory of computing
Hi-index | 0.00 |
Let G = (V, E) be a directed graph with positive edge weights, let s, t be two specified vertices in this graph, and let π(s, t) be the shortest path between them. In the replacement paths problem we want to compute, for every edge e on π(s, t), the shortest path from s to t that avoids e. The naive solution to this problem would be to remove each edge e, one at a time, and compute the shortest s - t path each time; this yields a running time of O(mn + n2 log n). Gotthilf and Lewenstein [8] recently improved this to O(mn+n2 log log n), but no o(mn) algorithms are known. We present the first approximation algorithm for replacement paths in directed graphs with positive edge weights. Given any ε ε [0, 1), our algorithm returns (1 + ε)-approximate replacement paths in O(ε-1 log2 n log(nC/c)(m+n log n)) = Õ(m log(nC/c)/ε) time, where C is the largest edge weight in the graph and c is the smallest weight. We also present an even faster (1 + ε) approximate algorithm for the simpler problem of approximating the k shortest simple s - t paths in a directed graph with positive edge weights. That is, our algorithm outputs k different simple s - t paths, where the kth path we output is a (1 + ε) approximation to the actual kth shortest simple s - t path. The running time of our algorithm is O(kε-1 log2 n(m + n log n)) = Õ(km/ε). The fastest exact algorithm for this problem has a running time of O(k(mn+n2 log log n)) = Õ(kmn) [8]. The previous best approximation algorithm was developed by Roditty [15]; it has a stretch of 3/2 and a running time of Õ(km√n) (it does not work for replacement paths). Note that all of our running times are nearly optimal except for the O (log(nC/c)) factor in the replacements paths algorithm. Also, our algorithm can solve the variant of approximate replacement paths where we avoid vertices instead of edges.