NIST

DAG shortest paths

(algorithm)

Definition: Solve the single-source shortest-path problem in a weighted directed acyclic graph by 1) doing a topological sort on the vertices by edge so vertices with no incoming edges are first and vertices with only incoming edges are last, 2) assign an infinite distance to every vertex (dist(v)=∞) and a zero distance to the source, and 3) for each vertex v in sorted order, for each outgoing edge e(v,u), if dist(v) + weight(e) < dist(u), set dist(u)=dist(v) + weight(e) and the predecessor of u to v.

See also Dijkstra's algorithm, Bellman-Ford algorithm.

Author: PEB


Go to the Dictionary of Algorithms and Data Structures home page.

If you have suggestions, corrections, or comments, please get in touch with Paul Black.

Entry modified 19 April 2004.
HTML page formatted Fri Feb 23 10:06:07 2018.

Cite this as:
Paul E. Black, "DAG shortest paths", in Dictionary of Algorithms and Data Structures [online], Vreda Pieterse and Paul E. Black, eds. 19 April 2004. (accessed TODAY) Available from: https://www.nist.gov/dads/HTML/dagShortPath.html