Programowanie w języku C. Ćwiczenia praktyczne. Wydanie II
19,90 zł
Biblia e-biznesu 2. Nowy Testament
−30%90,30 zł
Algorytmy, struktury danych i techniki programowania. Wydanie V
49,00 zł
Młodzi giganci programowania. Scratch
34,90 zł
Algorytmy. Ilustrowany przewodnik
54,90 zł
Visual Studio 2017. Tworzenie aplikacji Windows w języku C#
89,00 zł

Plik: Algorytm Dijkstry animacja

Animacja pokazująca na przykładzie działanie algorytmu Dijkstry. Obok węzłów zapisany jest koszt dotarcia do węzła i jego poprzednik na najkrótszej wyznaczonej ścieżce.

Dodano: 24 marca 2017 13:51.

Wykorzystanie pliku w artykułach:
REKLAMA

Zobacz też

Algorytm heurystyczny, heurystyka – algorytm poszukujący najlepszego spośród wielu dostępnych rozwiązań. Algorytmy heurystyczne w ogólnym przypadku nie dają gwarancji znalezienia rozwiązania optymalnego, jednak pozwalają znaleźć rozwiązanie dość dobre w stosunkowo krótkim czasie.

Pojęcie algorytmów heurystycznych jest bardzo szerokie, dotyczy ono różnych technik projektowania algorytmów. Wiele heurystyk wykorzystuje losowość, inne zaś są deterministyczne (wówczas dla takich samych danych wejściowych algorytm zawsze zwróci ten sam wynik).

Ogólny algorytm heurystyczny (opisujący samą ideę poszukiwań) bywa określany w literaturze jako metaheurystyka. Zgodnie z tym nazewnictwem, metaheurystyką jest np. algorytm zachłanny (jako ogólna idea), zaś heurystyką jest np. algorytm najbliższego sąsiada (jako zastosowanie idei algorytmu zachłannego do konkretnego problemu).

→ Czytaj całość

K-opt, algorytm k-optymalny – algorytm lokalnej optymalizacji wykorzystywany przy rozwiązywaniu problemu komiwojażera. Algorytm ten nie służy do samego wyznaczania trasy, a jedynie do ulepszania jej. Najprostszą wersją tego algorytmu jest algorytm 2-optymalny.

→ Czytaj całość

Powtarzalny algorytm najbliższego sąsiada (ang. repetitive nearest neighbour algorithm, w skrócie RNN) – algorytm służący do rozwiązywania problemu komiwojażera korzystający z algorytmu najbliższego sąsiada.

Algorytm polega na wielokrotnym wykonaniu algorytmu najbliższego sąsiada w taki sposób, aby każdy wierzchołek raz był wierzchołkiem początkowym. Następnie algorytm zwraca najlepsze spośród otrzymanych rozwiązań.

Dla grafu pełnego algorytm ma złożoność O(n3), gdzie n jest liczbą wierzchołków. W trakcie wykonywania algorytmu RNN n razy zostanie wykonany algorytm najbliższego sąsiada, który ma złożoność czasową O(n2).

Algorytm RNN nie daje gwarancji znalezienia rozwiązania optymalnego. W odróżnieniu od algorytmu najbliższego sąsiada daje jednak gwarancję, że zwróci rozwiązanie co najmniej tak dobre, jak n/2-1 innych rozwiązań (dowód i więcej informacji na ten temat znajduje się w pracy podanej w bibliografii).

→ Czytaj całość
Polityka prywatnościKontakt