Algorytmy i struktury danych: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Linia 1: | Linia 1: | ||
== Forma zajęć == | |||
Wykład (30 godzin) + laboratorium (30 godzin) | |||
== Opis == | == Opis == | ||
Projektowanie i analiza algorytmów. Przegląd podstawowych algorytmów i struktur danych. | Projektowanie i analiza algorytmów. Przegląd podstawowych algorytmów i struktur danych. | ||
== Sylabus == | == Sylabus == | ||
=== Autorzy === | === Autorzy === |
Wersja z 07:11, 9 cze 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 (pesymistyczna, oczekiwana),
- złożoność problemu algorytmicznego.
- Sortowanie:
- sortowanie przez porównania (InsertionSort, QuickSort, MergeSort),
- HeapSort i kopce binarne,
- złożoność problemu sortowania.
- Selekcja:
- minimum i maximum,
- algorytm Hoare'a,
- algorytm magicznych piątek.
- Wyszukiwanie:
- liniowe,
- binarne,
- drzewa wyszukiwań binarnych,
- zrównoważone drzewa wyszukiwań binarnych,
- B-drzewa,
- haszowanie.
- Złożone struktury danych:
- kolejki priorytetowe,
- struktury danych dla zbiorów rozłącznych.
- Algorytmy grafowe:
- DFS i jego zastosowania,
- problemy ścieżkowe -- Algorytm Dijkstry,
- najmniejsze drzewo rozpinające.
- Algorytmy tekstowe:
- algorytm Knutha-Morisa-Pratta,
- drzewa sufiksowe.