A faster algorithm for the single source shortest path problem with few distinct positive lengths

James B. Orlin, Kamesh Madduri, K. Subramani, M. Williamson

Research output: Contribution to journalArticlepeer-review

56 Scopus citations

Abstract

In this paper, we propose an efficient method for implementing Dijkstra's algorithm for the Single Source Shortest Path Problem (SSSPP) in a graph whose edges have positive length, and where there are few distinct edge lengths. The SSSPP is one of the most widely studied problems in theoretical computer science and operations research. On a graph with n vertices, m edges and K distinct edge lengths, our algorithm runs in O (m) time if n K ≤ 2 m, and O (m log frac(n K, m)) time, otherwise. We tested our algorithm against some of the fastest algorithms for SSSPP on graphs with arbitrary but positive lengths. Our experiments on graphs with few edge lengths confirmed our theoretical results, as the proposed algorithm consistently dominated the other SSSPP algorithms, which did not exploit the special structure of having few distinct edge lengths.

Original languageEnglish (US)
Pages (from-to)189-198
Number of pages10
JournalJournal of Discrete Algorithms
Volume8
Issue number2
DOIs
StatePublished - Jun 2010

All Science Journal Classification (ASJC) codes

  • Theoretical Computer Science
  • Discrete Mathematics and Combinatorics
  • Computational Theory and Mathematics

Cite this