Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Algorithm

Suurballe's Algorithm

Graph Algorithm

Suurballe's algorithm finds two disjoint paths in a nonnegatively weighted directed graph that connect the same pair of vertices with minimum total length. It was conceived by John W. Suurballe and published in 1974. The algorithm runs Dijkstra's algorithm to find one path, modifies the weights of the graph's edges, and then runs Dijkstra's algorithm a second time, combining the two resulting paths and discarding any edges traversed in opposite directions by both to form the final pair of disjoint paths. The weight modification is similar to the one used in Johnson's algorithm, and the method can be seen as a special case of a minimum cost flow algorithm that repeatedly pushes flow along a shortest augmenting path.

Facts
Time Complexity
Time Complexity (category)
Polynomial Time -- O(n^k) 1
Connections

In Field

Source Suurballe's Algorithm (Wikipedia)
Sources
1. Suurballe's Algorithm (Wikipedia)
  • Wikipedia infobox: time complexity polynomial
    polynomial
  • In Field: Algorithms and Complexity Theory, Lead sentence
    Suurballe's algorithm is an algorithm for finding two disjoint paths in a nonnegatively-weighted directed graph, so that both paths connect the same pair of vertices and have minimum total length.
  • In Group: Shortest Path Algorithms, Lead section
    finding two disjoint paths in a nonnegatively-weighted directed graph
View the Source
Wikidata: Suurballe's Algorithm
Wikidata Q7650417, class allow-list match (w-wdresolver-0926)View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.