Zaawansowane algorytmy i struktury danych: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Linia 41: | Linia 41: | ||
*** algorytm Forda-Fulkersona, | *** algorytm Forda-Fulkersona, | ||
*** algorytm Edmondsa-Karpa, | *** algorytm Edmondsa-Karpa, | ||
*** algorytm | *** algorytm Dinica. | ||
* Algorytmy geometryczne (2) | * Algorytmy geometryczne (2) |
Wersja z 05:25, 26 cze 2006
Forma zajęć
Wykład (30 godzin) + laboratorium (30 godzin)
Opis
Projektowanie i analiza algorytmów. Przegląd zaawansowanych algorytmów i struktur danych. Wprowadzenie do zaawansowanych technik projektowania algorytmów.
Sylabus
Autorzy
- Krzysztof Diks
- Wojciech Rytter
- Piotr Sankowski
Wymagania wstępne
- Algorytmy i struktury danych
- Analiza matematyczna
- Algebra liniowa z geometrią analityczną
Zawartość
- Zaawansowane algorytmy tekstowe (3)
- struktury danych dla tekstów - tablice i drzewa sufiksowe, grafy podsłów,
- regularności w tesktach - okresowość, symetrie, powtórzenia,
- algorytmy z błędami,
- algorytm Aho-Corasica.
- Wielomiany i FFT (1)
- mnożenie wielomianów,
- dzielenie wielomianów,
- obliczanie wartości,
- interpolacja.
- Zaawansowane algorytmy grafowe
- Problemy ścieżkowe (2)
- algorytm Bellmana-Forda,
- problemy ścieżkowe i mnożenie macierzy,
- algorytm Floyda-Warshalla,
- algorytm Johnsona.
- Skojarzenia (1)
- skojarzenia w grafach dwudzielnych - algorytmy Hopcrofta-Karpa,
- Maksymalny przepływ: (2)
- algorytm Forda-Fulkersona,
- algorytm Edmondsa-Karpa,
- algorytm Dinica.
- Problemy ścieżkowe (2)
- Algorytmy geometryczne (2)
- przynależnoźć punktu do wielokąta,
- znajdowanie otoczki wypukłej,
- technika zamiatania.
- Algorytmy równoległe (2)
- sieci sortujące,
- PRAM.
- Randomizacja: (2)
- algorytmy Monte Carlo i Las Vegas,
- problem minimalnego przekroju,
- lemat Zippela-Schwartza i jego zastosowania.
Literatura
- Wprowadzenie do algorytmów, Thomas H. Cormen , Charles E. Leiserson , Ronald L. Rivest , Clifford Stein, Wydawnictwa Naukowo - Techniczne, 2004.
- Algorytmy i struktury danych, L. Banachowski, K. Diks, W. Rytter, Wydawnictwa Naukowo - Techniczne, 2006.
- Randomized Algorithms, R. Motwani, P. Raghavan, Cambridge University Press, 1995.
- Text algorithms, W. Rytter, M. Crochemore, Oxford University Press, 1994.
Moduły
- Zaawansowane algorytmy tekstowe I (Ćwiczenia)
- Zaawansowane algorytmy tekstowe II (Ćwiczenia)
- Zaawansowane algorytmy tekstowe III (Ćwiczenia)
- Wielomiany i FFT (Ćwiczenia)
- Zaawansowane algorytmy grafowe I: Najkrótsze ścieżki (Ćwiczenia)
- Zaawansowane algorytmy grafowe II: Najkrótsze ścieżki (Ćwiczenia)
- Zaawansowane algorytmy grafowe III: Skojarzenia w grafach dwudzielnych (Ćwiczenia)
- Zaawansowane algorytmy grafowe IV: Maksymalny przepływ (Ćwiczenia)
- Zaawansowane algorytmy grafowe V: Maksymalny przepływ (Ćwiczenia)
- Algorytmy geometryczne I (Ćwiczenia)
- Algorytmy geometryczne II (Ćwiczenia)
- Algorytmy równoległe I (Ćwiczenia)
- Algorytmy równoległe II (Ćwiczenia)
- Algorytmy randomizowane I (Ćwiczenia)
- Algorytmy randomizowane II (Ćwiczenia)
Literatura uzupełniająca
opcjonalnie