An implementation of the Floyd-Warshall all shortest paths algorithm.
|(require (planet jaymccarthy/floyd-warshall))|
|(struct (cost edges))|
|cost : number?|
|edges : (listof any/c)|
A struct representing the path between two vertices. The edge list is really the list of nodes along the way.
Note: cost may be +inf.0 and edges may be empty.
|( how-many-nodes node-path)|
|→ (matrix? exact-integer? exact-integer? )|
|how-many-nodes : exact-integer?|
|node-path : (exact-integer? exact-integer? . -> . )|
Returns a matrix (from (planet wmfarr/simple-matrix/matrix-base)) that is how-many-nodes by how-many-nodes where entry (i,j) is the shortest path from node i to node j.