Pseudo Code
Lección 4 de 9 del curso Algoritmo de Bellman-Ford - Algoritmos de grafos de Coddy.
bellmanFord(n, edges, source):
dist = [INF, INF, ...]; dist[source] = 0
repeat (n - 1) times:
for each edge (u -> v, weight w):
if dist[u] != INF and dist[u] + w < dist[v]:
dist[v] = dist[u] + w
replace every remaining INF with -1
return dist
// ciclo negativo: después de n-1 pasadas, si alguna arista TODAVÍA se relaja, existe un ciclo negativo.- La guarda
dist[u] != INFnos impide construir caminos a partir de vértices inalcanzables. - Relajar toda la lista de aristas es una pasada. Bellman-Ford es simplemente esa pasada repetida
n - 1veces.
Pruébalo tú mismo
Esta lección no incluye un desafío de código.
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Algoritmo de Bellman-Ford - Algoritmos de grafos
2The Algorithm
How it works?Pseudo CodeImplementation (Part 1)Implementation (Part 2)