This module provides support for the very famous Dijkstra's Algorithm.
We follow the long and established tradition of describing this algorithm in the context of the classical shortest path problem. So the problem is to determine the shortest path between two given nodes of a network. It is assumed that the length of the arcs are not negative.
On the positive side, Cycles are welcome!. As usual, the length of a path is equal to the sum of the arc lengths on the path.
Four different modules are provided:
- A fun module for describing the shortest path problem.
- An interactive graphical version for a particular problem.
- A spread-sheet like version for user-defined problems.
- An in-depth Dynamic Programming comprehensive perspective on this fascinating algoeithm.
If you have not used Dijkstra's Algorithm before, we suggest that you have a quick look at the interactive graphical version before you use the spread-sheet like version to solve your own shortest path problems.
And if you are really interested in this algorithm and would like to learn about its roots, you must read the DP perspective.
This is just an advice. You are welcome to use any one of these modules.