Abstract
We present a simple shortest path algorithm. If the input lengths are positive and uniformly distributed, the algorithm runs in linear time. The worst-case running time of the algorithm is O(m + n log C), where n and m are the number of vertices and arcs of the input graph, respectively, and C is the ratio of the largest and the smallest nonzero arc length.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
A. V. Aho, J. E. Hopcroft, and J. D. Ullman. The Design and Analysis of Computer Algorithms. Addison-Wesley, 1974.
R. K. Ahuja, K. Mehlhorn, J. B. Orlin, and R. E. Tarjan. Faster Algorithms for the Shortest Path Problem. J. Assoc. Comput. Mach., 37(2):213–223, April 1990.
A. Brodnik, S. Carlsson, J. Karlsson, and J. I. Munro. Worst case constant time priority queues. In Proc. 12th ACM-SIAM Symposium on Discrete Algorithms, pages 523–528, 2001.
B. V. Cherkassky and A. V. Goldberg. Negative-Cycle Detection Algorithms. Math. Prog., 85:277–311, 1999.
B. V. Cherkassky, A. V. Goldberg, and T. Radzik. Shortest Paths Algorithms: Theory and Experimental Evaluation. Math. Prog., 73:129–174, 1996.
B. V. Cherkassky, A. V. Goldberg, and C. Silverstein. Buckets, Heaps, Lists, and Monotone Priority Queues. SIAM J. Comput., 28:1326–1346, 1999.
H. Chernoff. A Measure of Asymptotic Efficiency for Test of a Hypothesis Based on the Sum of Observations. Anals of Math. Stat., 23:493–509, 1952.
R. Cole and U. Vishkin. Deterministic Coin Tossing with Applications to Optimal Parallel List Ranking. Information and Control, 70:32–53, 1986.
E. V. Denardo and B. L. Fox. Shortest-Route Methods: 1. Reaching, Pruning, and Buckets. Oper. Res., 27:161–186, 1979.
R. B. Dial. Algorithm 360: Shortest Path Forest with Topological Ordering. Comm. ACM, 12:632–633, 1969.
R. B. Dial, F. Glover, D. Karney, and D. Klingman. A Computational Analysis of Alternative Algorithms and Labeling Techniques for Finding Shortest Path Trees. Networks, 9:215–248, 1979.
E. W. Dijkstra. A Note on Two Problems in Connexion with Graphs. Numer. Math., 1:269–271, 1959.
E. A. Dinic. Economical algorithms for finding shortest paths in a network. In Yu.S. Popkov and B.L. Shmulyian, editors, Transportation Modeling Systems, pages 36–44. Institute for System Studies, Moscow, 1978. In Russian.
L. Ford. Network Flow Theory. Technical Report P-932, The Rand Corporation, 1956.
L. R. Ford, Jr. and D. R. Fulkerson. Flows in Networks. Princeton Univ. Press, Princeton, NJ, 1962.
M. L. Fredman and R. E. Tarjan. Fibonacci Heaps and Their Uses in Improved Network Optimization Algorithms. J. Assoc. Comput. Mach., 34:596–615, 1987.
M. L. Fredman and D. E. Willard. Trans-dichotomous Algorithms for Minimum Spanning Trees and Shortest Paths. J. and Syst. Sci., 48:533–551, 1994.
H. N. Gabow. Scaling Algorithms for Network Problems. J. of and Sys. Sci., 31:148–168, 1985.
G. Gallo and S. Pallottino. Shortest Paths Algorithms. Annals of Oper. Res., 13:3–79, 1988.
F. Glover, R. Glover, and D. Klingman. Computational Study of an Improved Shortest Path Algorithm. Networks, 14:25–37, 1984.
A. V. Goldberg and C. Silverstein. Implementations of Dijkstra’s Algorithm Based on Multi-Level Buckets. In P. M. Pardalos, D. W. Hearn, and W. W. Hages, editors, Lecture Notes in Economics and Mathematical System 450 (Refereed Proceedings), pages 292–327. Springer Verlag, 1997.
T. Hagerup. Improved Shortest Paths in the Word RAM. In 27th Int. Colloq. on Automata, Languages and Programming, Geneva, Switzerland, pages 61–72, 2000.
U. Meyer. Single-Source Shortest Paths on Arbitrary Directed Graphs in Linear Average Time. In Proc. 12th ACM-SIAM Symposium on Discrete Algorithms, pages 797–806, 2001.
U. Meyer. Single-Source Shortest Paths on Arbitrary Directed Graphs in Linear Average Time. Technical Report MPI-I-2001-1-002, Max-Planck-Institut für Informatik, Saarbrüken, Germany, 2001.
R. Motwani and P. Raghavan. Randomized Algorithms. Cambridge University Press, 1995.
K. Noshita. A Theorem on the Expected Complexity of Dijkstra’s Shortest Path Algorithm. J. Algorithms, 6:400–408, 1985.
R. Raman. Fast Algorithms for Shortest Paths and Sorting. Technical Report TR 96-06, King’s Colledge, London, 1996.
R. Raman. Priority Queues: Small, Monotone and Trans-Dichotomous. In Proc. 4th Annual European Symposium Algorithms, pages 121–137. Springer-Verlag, Lect. Notes in CS 1136, 1996.
R. Raman. Recent Results on Single-Source Shortest Paths Problem. SIGACT News, 28:81–87, 1997.
R. E. Tarjan. Data Structures and Network Algorithms. Society for Industrial and Applied Mathematics, Philadelphia, PA, 1983.
M. Thorup. Undirected Single-Source Shortest Paths with Positive Integer Weights in Linear Time. J. Assoc. Comput. Mach., 46:362–394, 1999.
M. Thorup. On RAM Priority Queues. SIAM Journal on Computing, 30:86–109, 2000.
F. B. Zhan and C. E. Noon. Shortest Path Algorithms: An Evaluation using Real Road Networks. Transp. Sci., 32:65–73, 1998.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Goldberg, A.V. (2001). A Simple Shortest Path Algorithm with Linear Average Time. In: auf der Heide, F.M. (eds) Algorithms — ESA 2001. ESA 2001. Lecture Notes in Computer Science, vol 2161. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44676-1_19
Download citation
DOI: https://doi.org/10.1007/3-540-44676-1_19
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-42493-2
Online ISBN: 978-3-540-44676-7
eBook Packages: Springer Book Archive