Algorytmy i struktury danych: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Linia 39: Linia 39:
** problemy ścieżkowe -- Algorytm Dijkstry,
** problemy ścieżkowe -- Algorytm Dijkstry,
** najmniejsze drzewo rozpinające.
** najmniejsze drzewo rozpinające.
* Algorytmy tekstowe.
* Algorytmy tekstowe:
** algorytm Knutha-Morisa-Pratta
** algorytm Knutha-Morisa-Pratta,
** drzewa sufiksowe.
** drzewa sufiksowe.


=== Literatura ===
=== Literatura ===

Wersja z 19:00, 8 cze 2006

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.

Literatura