« poprzedni punkt   następny punkt »



Streszczenie wykładu 11

Metody konstrukcji algorytmów, jakie poznaliśmy w  poprzednich wykładach tego kursu, to rekursja i metoda "dziel i zwyciężaj". W tym wykładzie poznamy metodę, prowadzącą do tzw. algorytmów zachłannych, ang. greedy algorithms. Stosuje się je zwykle w problemach optymalizacji. Idea algorytmu zachłannego jest bardzo prosta: w każdej chwili, gdy trzeba podjąć decyzję odnośnie dalszego postępowania, wybieramy tę, która w danej chwili wydaje się prowadzić do najlepszego rozwiązania, decyzję lokalnie optymalną. W tym i w następnym wykładzie, przedstawimy przykłady problemów i ich rozwiązań, w których strategia "zachłanna" prowadzi do doskonałych rezultatów - daje optymalne algorytmy rozwiązujące postawiony problem.  Zdarzają się jednak sytuacje, w których takie postępowanie nie doprowadzi do rozwiązania problemu. Dlatego też tę technikę konstrukcji algorytmów należy stosować bardzo ostrożnie.

W punkcie drugim tego wykładu omówimy problem kodowania, a następnie rozwiązanie Huffmana, algorytm zachłanny konstrukcji drzewa kodowego. Punkty cztery i pięć wykładu dotyczą problemu znajdowania najkrótszych ścieżek z ustalonego źródła w dowolnym grafie. Algorytm Dijkstry, rozwiązujący ten problem jest przykładem algorytmu zachłannego.

« poprzedni punkt   następny punkt »