|
Pracownia Informatyki Akademia Górniczo - Hutnicza Wydział Inżynierii Metali i Informatyki Przemysłowej |
|
|
|
|
|
tel.
+48 /0-prefix/ 12 617 20 92, fax. +48 /0-prefix/
12 617 20 92 |
|
ip@agh.edu.pl |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[ Dzisiaj jest: Czwartek, 2024-05-09, 23:07:51 ]
|
|
|
|
|
|
|
TREŚCI MERYTORYCZNE - PRZEDMIOTY WSPÓLNE |
|
|
|
|
|
ALGORYTMY I STRUKTURY DANYCH
|
|
OPIS PRZEDMIOTU: |
|
Pojęcia podstawowe - struktury danych, algorytmy i projektowanie algorytmów. Analiza i ocena efektywności algorytmów. Algorytmy sortowania. Rekurencja: obliczenia rekurencyjne i reku-rencyjne wykreślanie krzywych, niebezpieczeństwa rekurencji. Drzewa. Grafy. Dynamiczne struktury danych, ich reprezentacja i operacje z nimi związane. Algorytmy aproksymacyjne. Al-gorytmy równoległe.
|
WYKŁAD: |
30 godz. |
- Wprowadzenie: Idea stosowania narzędzi informatycznych do rozwiązywania problemów. Eta-py: specyfikacja problemu, identyfikacja struktury danych, analiza warunków rozwiązania, wybór metody i narzędzi, budowa algorytmu, kodowanie algorytmu w wybranym języku progra-mowania, opracowanie dokumentacji eksploatacyjnej (2).
Pojęcia podstawowe; definicja algorytmu i jego cech: stabilności, szybkości i złożoności obliczeniowej (złożoność oczekiwana i złożoność pesymistyczna). Reprezentacja problemów i algorytmów: opis słowny, lista kroków, schemat blokowy, drzewo algorytmu, pseudokod. Grafy i drzewa-rodzaje. (2).
Podstawowe struktury danych: standardowe typy proste, typy okrojone, tablice, rekordy, zbiory. Reprezentacja tablic, rekordów i zbiorów. Plik sekwencyjny. Teksty.(2) Algorytmy sortowania; sortowanie przez wstawianie, przez wybór, przez prostą zamianę, przez podział, sortowanie bą-belkowe, sortowanie drzewiaste. Metoda ,dziel i zwyciężaj. Porównywanie metod sortowania - ocena efektywności algorytmów. Algorytmy Heapsort i Quicksort -analiza(3). Rekurencja: metoda podstawiania, metoda iteracyjna, metoda rekurencji uniwersalnej. Przykłady: rekurencyjne obliczenia potęgi, wartości wielomianu, silni, rekursywny ciąg Fibonacciego. Rekurencyjny algorytm Euklidesa obliczanie NWD(2). Rekurencyjne wykreślanie wzorów geometrycznych np: krzywe Hilberta, krzywa Sierpińskiego. Niebezpieczeństwa rekurencji; nieskończona rekurencja, nieuzasadniona rekurencja, ogólne zasady eliminowania rekurencji (3).
Dynamiczne struktury dany - listy: tworzenie, przeglądanie, scalanie, usuwanie wybranego elementu (2). Stos / kolejka, listy dwukierunkowe wraz z podstawowymi operacjami (2). Dyna-miczne struktury danych - struktury drzewiaste; drzewa binarne: tworzenie, przeglądanie i inne operacje (2). Dynamiczne struktury danych-drzewa niebinarne i podstawowe operacje (2). Dynamiczne struktury danych- grafy, przeszukiwanie w głąb, przeszukiwanie wszerz (2); minimalne drzewa rozpinające, najkrótsze ścieżki z jednym źródłem, najkrótsze ścieżki między wszystkimi parami wierzchołków (2), maksymalny przepływ i inne algorytmy aproksymacyjne (2). Algorytmy równoległe (2).
|
ĆWICZENIA LABORATORYJNE: |
15 godz. |
|
ĆWICZENIA AUDYTORYJNE: |
30 godz. |
Porównanie metod sortowania tablic - analiza złożoności algorytmów (2). Przykłady algoryt-mów iteracyjnych i rekurencyjnych - ocena i porównanie złożoności obliczeniowej (2). Wykreśl-nie krzywych geometrycznych (2). Listy jedno- i dwukierunkowe (2). Stos / kolejka: przetwarza-nie danych (2). Struktury drzewiaste: tworzenie, przeglądanie, usuwanie poddrzewa oraz wybra-nego elementu (2). Grafy: tworzenie, przeszukiwanie w głąb, przeszukiwanie wszerz, minimalne drzewa rozpinające, najkrótsze ścieżki z jednym źródłem, najkrótsze ścieżki między wszystkimi parami wierzchołków, maksymalny przepływ (3).
|
AUTORZY OPRACOWANIA: dr Anna Adrian, mgr inż. Gabriel Rojek WMiIM
|
DOSTĘPNE PODRĘCZNIKI: |
|
01. H.T. Cormen, Ch. L. Leiserson, R.L Rivest , Wprowadzenie do algortmów, WNT, Warszawa 2001 02. M.M.Sysło, Algorytmy, WSiP, Warszawa 1999 03. N. Wirth, Algorytmy + Struktury Danych= Programy, WNT, Warszawa 1980, 1999, 2000- 04. R.Stephens, Algorytmy i struktury danych z przykładami w Delphi, Wyd. HELION, Gliwice 2000 05. P. Wróblewski, Algorytmy, struktury danych i techniki programowania, Wyd. HELION, 1996 06. L. Banachowski, K. Diks, W. Rytter, Algorytmy i struktury danych, WNT, Warszawa 1996
|
|
|
|
|
|