Breaking the Bellman-Ford Shortest-Path Bound
Abstract
In this paper we give a single-source shortest-path algorithm that breaks, after over 65 years, the O(n · m) bound for the running time of the Bellman-Ford-Moore algorithm, where n is the number of vertices and m is the number of arcs of the graph. Our algorithm converts the input graph to a graph with nonnegative weights by performing at most (2 · n,2 · m/ n) calls to a modified version of Dijkstra's algorithm, such that the shortest-path trees are the same for the new graph as those for the original. When Dijkstra's algorithm is implemented using Fibonacci heaps, the running time of our algorithm is therefore O(n · m + n · m n).
Turn this paper into a full lesson
ArcXiv compiles a staged curriculum from this paper: 8-12 lessons across beginner → advanced, synthesised section guides, visuals, flashcards, a quiz, exercises, and on-demand deep dives per section. Grounded in the abstract, never invented.