All Pairs Shortest Distance, Floyd's Algorithm.

TOMS097 is a FORTRAN90 library which computes the distance between all pairs of nodes in a directed graph with weighted edges, using Floyd's algorithm.


The computer code and data files made available on this web page are distributed under the GNU LGPL license.


TOMS097 is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version and a Python version.

Related Data and Programs:

CITIES, a FORTRAN90 library which handles various problems associated with a set of "cities" on a map.

CITIES, a dataset directory which contains a number of city distance datasets.

DIJKSTRA, a FORTRAN90 program which runs a simple example of Dijkstra's minimum distance algorithm for graphs.

FLOYD, a FORTRAN90 library which implements Floyd's algorithm for finding the shortest distance between every pair of nodes in a directed graph.

GRAFPACK, a FORTRAN90 library which computes various quantities associated with mathematical graphs.


  1. Robert Floyd,
    Algorithm 97: Shortest Path,
    Communications of the ACM,
    Volume 5, Number 6, page 345, June 1962.

Source Code:

Examples and Tests:

List of Routines:

You can go up one level to the FORTRAN90 source codes.

Last revised on 01 March 2014.