Algorytmy i struktury danych: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Linia 51: | Linia 51: | ||
* [[ASD Moduł 1| Wstęp]] ([[ASD Ćwiczenia 1|Ćwiczenia]]) | * [[ASD Moduł 1| Wstęp]] ([[ASD Ćwiczenia 1|Ćwiczenia]]) | ||
* [[ASD Moduł 2| | * [[ASD Moduł 2| Wstęp (cz. 2)]] ([[ASD Ćwiczenia 2|Ćwiczenia]]) | ||
* [[ASD Moduł 3| | * [[ASD Moduł 3| Sortowanie (cz. 1)]] ([[ASD Ćwiczenia 3|Ćwiczenia]]) | ||
* [[ASD Moduł 4| | * [[ASD Moduł 4| Sortowanie (cz. 2)]] ([[ASD Ćwiczenia 4|Ćwiczenia]]) | ||
* [[ASD Moduł 5| | * [[ASD Moduł 5| Sortowanie (cz. 3)]] ([[ASD Ćwiczenia 5|Ćwiczenia]]) | ||
* [[ASD Moduł 6| | * [[ASD Moduł 6| Selekcja]] ([[ASD Ćwiczenia 6|Ćwiczenia]]) | ||
* [[ASD Moduł 7| | * [[ASD Moduł 7| Wyszukiwanie]] ([[ASD Ćwiczenia 7|Ćwiczenia]]) | ||
* [[ASD Moduł 8| ???]] ([[ASD Ćwiczenia 8|Ćwiczenia]]) | * [[ASD Moduł 8| ???]] ([[ASD Ćwiczenia 8|Ćwiczenia]]) | ||
* [[ASD Moduł 9| ???]] ([[ASD Ćwiczenia 9|Ćwiczenia]]) | * [[ASD Moduł 9| ???]] ([[ASD Ćwiczenia 9|Ćwiczenia]]) |
Wersja z 07:49, 14 lip 2006
Forma zajęć
Wykład (30 godzin) + laboratorium (30 godzin)
Opis
Projektowanie i analiza algorytmów. Przegląd podstawowych algorytmów i struktur danych.
Sylabus
Autorzy
- Wojciech Rytter,
- Krzysztof Diks
Wymagania wstępne
- Wstęp do programowania
- Metody programowania
- Matematyka dyskretna
- Logika i teoria mnogości
Zawartość
- Podstawowe zasady analizy algorytmów
- poprawność
- złożoność obliczeniowa algorytmu (pesymistyczna, oczekiwana, koszt zamortyzowany)
- złożoność problemu algorytmicznego
- Sortowanie
- sortowanie przez porównania (InsertionSort, QuickSort, MergeSort)
- HeapSort i kopce binarne
- złożoność problemu sortowania
- sortowanie pozycyjne
- Selekcja
- algorytm Hoare'a
- algorytm magicznych piątek
- Wyszukiwanie
- liniowe
- binarne
- drzewa poszukiwań binarnych
- haszowanie
- Złożone struktury danych
- słowniki i ich implementacje - zrównoważone drzewa poszukiwań binarnych, drzewa typu splay, B-drzewa
- kolejki priorytetowe - kolejki dwumianowe i kopce Fibonacciego
- sumowanie zbiorów rozłącznych
- Algorytmy grafowe
- DFS i jego zastosowania
- problemy ścieżkowe -- Algorytm Dijkstry
- minimalne drzewo rozpinające
- Algorytmy tekstowe
- wyszukiwanie wzorca w tekście - algorytmy Knutha-Morisa-Pratta i Boyera-Moora
- kompresja tekstów
- NP-zupełność
- klasa NP
- problemy NP-trudne i NP-zupełne
Moduły
- Wstęp (Ćwiczenia)
- Wstęp (cz. 2) (Ćwiczenia)
- Sortowanie (cz. 1) (Ćwiczenia)
- Sortowanie (cz. 2) (Ćwiczenia)
- Sortowanie (cz. 3) (Ćwiczenia)
- Selekcja (Ćwiczenia)
- Wyszukiwanie (Ćwiczenia)
- ??? (Ćwiczenia)
- ??? (Ćwiczenia)
- ??? (Ćwiczenia)
- ??? (Ćwiczenia)
- ??? (Ćwiczenia)
- ??? (Ćwiczenia)
- ??? (Ćwiczenia)
- ??? (Ćwiczenia)
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.