Menu
Coddy logo textTech

Motywacja

Lekcja 2 z 9 w kursie Sortowanie topologiczne – algorytmy grafowe w Coddy.

Porządek topologiczny istnieje tylko wtedy, gdy graf nie zawiera cykli. Tworzymy go za pomocą algorytmu Kahna, który wielokrotnie usuwa wierzchołek, do którego nie prowadzą już żadne krawędzie.

Dlaczego warto poznać sortowanie topologiczne?

  • Porządkowanie z uwzględnieniem ograniczeń: systemy kompilacji, planowanie zadań, wymagania wstępne kursów i przeliczanie arkuszy kalkulacyjnych — wszystkie te zastosowania opierają się na nim.
  • Wykrywanie cykli: jeśli nie możesz uporządkować wszystkich wierzchołków, graf musi zawierać cykl.
  • Podstawa algorytmów dla DAG-ów: najkrótsze i najdłuższe ścieżki w DAG-u oblicza się w porządku topologicznym.

Może istnieć wiele poprawnych porządków. Aby uzyskać jeden przewidywalny wynik, zawsze usuwamy wierzchołek o najmniejszym numerze, którego stopień wejściowy wynosi 0.

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 Sortowanie topologiczne – algorytmy grafowe

Poćwicz samodzielnie: Kompilator C online