Check out my first novel, midnight's simulacra!

Suurballe's Algorithm

From dankwiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

An algorithm to find two paths in a nonnegatively-weighted directed graph, such that the two paths connect the same vertices, are otherwise disjoint, and minimize path lenghts. There exist obvious applications to routing survivability and network flow. The algorithm involves running Dijkstra twice.