All Pairs Shortest Paths
Problema risolto con un algoritmo di programmazione dinamica.
Input: Grafo con , funzione peso sugli archi che non genera cicli negativi Output: cammini minimi tra ogni coppia di nodi di G
Si potrebbe trovare una soluzione utilizzando l’algoritmo di Bellman Ford per ogni vertice, ma verrebbe a costare troppo .
Il sottoproblema si può definire tramite tre nodi di , e lunghezza del cammino minimo tra i e j che usa solo i nodi {1, 2, …, k}. Se il cammino minimo non esiste, dist() ritorna .
Algoritmo Floyd-Warshall
Il costo è di .