English

Improving The Floyd-Warshall All Pairs Shortest Paths Algorithm

Data Structures and Algorithms 2021-09-07 v1

Abstract

The Floyd-Warshall algorithm is the most popular algorithm for determining the shortest paths between all pairs in a graph. It is very a simple and an elegant algorithm. However, if the graph does not contain any negative weighted edge, using Dijkstra's shortest path algorithm for every vertex as a source vertex to produce all pairs shortest paths of the graph works much better than the Floyd-Warshall algorithm for sparse graphs. Also, for the graphs with negative weighted edges, with no negative cycle, Johnson's algorithm still performs significantly better than the Floyd-Warshall algorithm for sparse graphs. Johnson's algorithm transforms the graph into a non-negative one by using the Bellman-Ford algorithm, then, applies the Dijkstra's algorithm. Thus, in general the Floyd-Warshall algorithm becomes very inefficient especially for sparse graphs. In this paper, we show a simple improvement on the Floyd-Warshall algorithm that will increases its performance especially for the sparse graphs, so it can be used instead of more complicated alternatives.

Keywords

Cite

@article{arxiv.2109.01872,
  title  = {Improving The Floyd-Warshall All Pairs Shortest Paths Algorithm},
  author = {Ismail H. Toroslu},
  journal= {arXiv preprint arXiv:2109.01872},
  year   = {2021}
}
R2 v1 2026-06-24T05:40:56.307Z