Menu
Coddy logo textTech

Jak to działa?

Lekcja 3 z 9 w kursie Algorytm Dijkstry — algorytmy grafowe w Coddy.

Utrzymuj tablicę dist: dist[source] = 0, a każdemu innemu wierzchołkowi przypisz na początku „nieskończoność” (bardzo dużą liczbę). Dla każdego wierzchołka utrzymuj flagę visited.

Proces krok po kroku:

  1. Spośród nieodwiedzonych wierzchołków wybierz ten u, który ma najmniejszą wartość dist. Jeśli żaden nie jest osiągalny, zatrzymaj się.
  2. Oznacz u jako odwiedzony: jego odległość jest już ostateczna.
  3. Relaksuj każdą krawędź u -> v o wadze w: jeśli dist[u] + w < dist[v], zmniejsz dist[v].
  4. Powtarzaj, aż odległości wszystkich osiągalnych wierzchołków będą ostateczne.

Na końcu każdy wierzchołek, którego wartość nadal wynosi nieskończoność, jest nieosiągalny (zwracamy dla niego -1).

Spróbuj swoich sił

Ta lekcja nie zawiera wyzwania z kodem.

quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Algorytm Dijkstry — algorytmy grafowe

Poćwicz samodzielnie: Kompilator C online