A Simple Shortest Path Algorithm with Linear Average Time

  • Andrew V. Goldberg
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2161)


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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    A. V. Aho, J. E. Hopcroft, and J. D. Ullman. The Design and Analysis of Computer Algorithms. Addison-Wesley, 1974.Google Scholar
  2. 2.
    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.Google Scholar
  3. 3.
    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.Google Scholar
  4. 4.
    B. V. Cherkassky and A. V. Goldberg. Negative-Cycle Detection Algorithms. Math. Prog., 85:277–311, 1999.MATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    B. V. Cherkassky, A. V. Goldberg, and T. Radzik. Shortest Paths Algorithms: Theory and Experimental Evaluation. Math. Prog., 73:129–174, 1996.MathSciNetGoogle Scholar
  6. 6.
    B. V. Cherkassky, A. V. Goldberg, and C. Silverstein. Buckets, Heaps, Lists, and Monotone Priority Queues. SIAM J. Comput., 28:1326–1346, 1999.MATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    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.MathSciNetMATHCrossRefGoogle Scholar
  8. 8.
    R. Cole and U. Vishkin. Deterministic Coin Tossing with Applications to Optimal Parallel List Ranking. Information and Control, 70:32–53, 1986.MATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    E. V. Denardo and B. L. Fox. Shortest-Route Methods: 1. Reaching, Pruning, and Buckets. Oper. Res., 27:161–186, 1979.MATHMathSciNetGoogle Scholar
  10. 10.
    R. B. Dial. Algorithm 360: Shortest Path Forest with Topological Ordering. Comm. ACM, 12:632–633, 1969.CrossRefGoogle Scholar
  11. 11.
    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.MATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    E. W. Dijkstra. A Note on Two Problems in Connexion with Graphs. Numer. Math., 1:269–271, 1959.MATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    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.Google Scholar
  14. 14.
    L. Ford. Network Flow Theory. Technical Report P-932, The Rand Corporation, 1956.Google Scholar
  15. 15.
    L. R. Ford, Jr. and D. R. Fulkerson. Flows in Networks. Princeton Univ. Press, Princeton, NJ, 1962.MATHGoogle Scholar
  16. 16.
    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.MathSciNetGoogle Scholar
  17. 17.
    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.MATHCrossRefMathSciNetGoogle Scholar
  18. 18.
    H. N. Gabow. Scaling Algorithms for Network Problems. J. of and Sys. Sci., 31:148–168, 1985.MATHCrossRefMathSciNetGoogle Scholar
  19. 19.
    G. Gallo and S. Pallottino. Shortest Paths Algorithms. Annals of Oper. Res., 13:3–79, 1988.MathSciNetGoogle Scholar
  20. 20.
    F. Glover, R. Glover, and D. Klingman. Computational Study of an Improved Shortest Path Algorithm. Networks, 14:25–37, 1984.CrossRefGoogle Scholar
  21. 21.
    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.Google Scholar
  22. 22.
    T. Hagerup. Improved Shortest Paths in the Word RAM. In 27th Int. Colloq. on Automata, Languages and Programming, Geneva, Switzerland, pages 61–72, 2000.Google Scholar
  23. 23.
    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.Google Scholar
  24. 24.
    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.Google Scholar
  25. 25.
    R. Motwani and P. Raghavan. Randomized Algorithms. Cambridge University Press, 1995.Google Scholar
  26. 26.
    K. Noshita. A Theorem on the Expected Complexity of Dijkstra’s Shortest Path Algorithm. J. Algorithms, 6:400–408, 1985.MATHCrossRefMathSciNetGoogle Scholar
  27. 27.
    R. Raman. Fast Algorithms for Shortest Paths and Sorting. Technical Report TR 96-06, King’s Colledge, London, 1996.Google Scholar
  28. 28.
    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.Google Scholar
  29. 29.
    R. Raman. Recent Results on Single-Source Shortest Paths Problem. SIGACT News, 28:81–87, 1997.CrossRefGoogle Scholar
  30. 30.
    R. E. Tarjan. Data Structures and Network Algorithms. Society for Industrial and Applied Mathematics, Philadelphia, PA, 1983.Google Scholar
  31. 31.
    M. Thorup. Undirected Single-Source Shortest Paths with Positive Integer Weights in Linear Time. J. Assoc. Comput. Mach., 46:362–394, 1999.MATHMathSciNetGoogle Scholar
  32. 32.
    M. Thorup. On RAM Priority Queues. SIAM Journal on Computing, 30:86–109, 2000.MATHCrossRefMathSciNetGoogle Scholar
  33. 33.
    F. B. Zhan and C. E. Noon. Shortest Path Algorithms: An Evaluation using Real Road Networks. Transp. Sci., 32:65–73, 1998.MATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Andrew V. Goldberg
    • 1
  1. 1.STAR LaboratoryInterTrust Technologies Corp.Santa ClaraUSA

Personalised recommendations