How it works?
Lição 3 de 9 do curso Algoritmo de Dijkstra - Algoritmos de Grafos da Coddy.
Mantenha um array dist: dist[source] = 0 e todos os outros vértices começam no "infinito" (um número muito grande). Mantenha uma flag visited por vértice.
Processo Passo a Passo:
- Entre os vértices não visitados, escolha aquele
ucom o menordist. Se nenhum for alcançável, pare. - Marque
ucomo visitado: sua distância agora é final. - Relaxe cada aresta
u -> vde pesow: sedist[u] + w < dist[v], diminuadist[v]. - Repita até que todos os vértices alcançáveis sejam finalizados.
Ao final, qualquer vértice que ainda estiver no infinito é inalcançável (nós o reportamos como -1).
Experimente você mesmo
Esta lição não inclui um desafio de código.
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Algoritmo de Dijkstra - Algoritmos de Grafos
2The Algorithm
How it works?Pseudo CodeImplementation (Part 1)Implementation (Part 2)