Algorytmy i Struktury Danych 2

Transkrypt

Algorytmy i Struktury Danych 2
Załącznik
Data:
01.10.2009r.
Wydanie: I
Symbol:
Z-5.4-1-1
Strona:
Status:
obowiązujący
1/1
KARTA PRZEDMIOTU
KARTA PRZEDMIOTU
Wydział Automatyki, Elektroniki i Informatyki, Rok akademicki: 2009/2010
Nazwa przedmiotu:
ALGORYTMY I
STRUKTURY DANYCH
2
Kod/nr
AiSD2/NSMW
Kierunek:
INFORMATYKA
Specjalność: PRZEDMIOT OBOWIĄZKOWY DLA WSZYSTKICH STUDENTÓW
Tryb studiów: NIESTACJONARNE DRUGIEGO STOPNIA, WIECZOROWE
Liczba pkt ECTS: 4
Rodzaj przedmiotu:
TECHNICZNY
Instytut/ Katedra:
INFORMATYKI
Semestr:
I (IX)
Prowadzący przedmiot:
dr inŜ. Jacek Widuch
Prowadzący zajęcia:
Liczba godzin
Wykład:
Widuch
dr
inŜ.
JacekWykład:
Ćwiczenia:
Widuch
dr
inŜ.
Ćwiczenia: 15
JacekLaboratorium:
Laboratorium:
Projekt:
30
Projekt:
Seminarium:
Seminarium:
Powiązanie ze standardami i cel kształcenia
Przedmiot jest kontynuacją przedmiotu Algorytmy i Struktury Danych prowadzonego dla
semestru 4 wieczorowych studiów inŜynierskich niestacjonarnych. Celem przedmiotu jest
wprowadzenie słuchacza w zaawansowane zagadnienie algorytmów i struktur danych.
Prezentowane są zagadnienia związane z kompresją danych, kryptografią i kryptoanalizą,
metaheurystyki optymalizacyjne, wybrane algorytmy grafowe. Ponadto student zapoznawany
jest z drzewiastymi strukturami danych, tablicami i drzewami sufiksów stosowanymi w
przetwarzaniu tekstów oraz na przykładzie drzewa BST z trwałymi strukturami danych.
Studenci nabywają umiejętności analizy złoŜoności, oceny algorytmów, a takŜe
konstruowania algorytmów z uŜyciem zaawansowanych technik algorytmicznych.
Załącznik
Data:
01.10.2009r.
Wydanie: I
Status:
obowiązujący
Symbol:
Z-5.4-1-1
Strona:
2/1
KARTA PRZEDMIOTU
Nazwa przedmiotu:
ALGORYTMY I
STRUKTURY DANYCH
2
Kod/nr
AiSD2/NSMW
Przedmioty wprowadzające oraz wymagania wstępne
Przedmiotami wprowadzającymi do niniejszego przedmiotu są:
1. Analiza Matematyczna i Algebra Liniowa
2. Algorytmy i Struktury Danych (część I dla wieczorowych studiów inŜynierskich
niestacjonarnych)
3. Programowanie Komputerów
Zakłada się, Ŝe słuchacz wykazuje znajomość materiału prezentowanego w ramach
wymienionych przedmiotów.
Załącznik
Data:
01.10.2009r.
Wydanie: I
Status:
obowiązujący
Symbol:
Z-5.4-1-1
Strona:
3/1
KARTA PRZEDMIOTU
Nazwa przedmiotu:
ALGORYTMY I
STRUKTURY DANYCH
2
Kod/nr
AiSD2/NSMW
Treść wykładów:
1. Algorytmy kompresji danych: kodowanie Huffmana; kodowanie arytmetyczne;
algorytmy z rodziny LZ: LZ77, LZ78, LZW, LZSS; algorytmy z rodziny BWT:
transformata BWT i odwrotna, algorytmy drugiego etapu i dalsze modelowanie;
algorytmy z rodziny PPM; algorytmy kompresji obrazów; algorytmy kompresji mowy
i dźwięków; algorytmy kompresji wideo.
2. Struktury drzewiaste: drzewa BST; drzewa AVL; drzewa czerwono-czarne; listy
pomijane; drzewa splay; kopce; drzepce; operacje wstawiania, usuwania i
wyszukiwania.
3. Drzewa i tablice sufiksów: definicja i własności drzewa sufiksów; algorytm Ukkonena
budowy drzewa sufiksów; wyszukiwanie w drzewie sufiksów; uogólnione drzewa
sufiksów; definicja tablicy sufiksów; zastosowania tablic i drzew sufiksów.
4. Trwałe struktury danych: typy struktur danych ze względu na trwałość; metoda
grubych węzłów; metoda kopiowania ścieŜki; metoda Sleatora i Tarjana.
5. Przeszukiwanie grafu: algorytmy przeszukiwania w głąb i wszerz.
6. Wyznaczanie najkrótszej ścieŜki w grafie waŜonym: algorytmy Floyda-Warshalla,
Dijkstry, Bellmana-Forda, Johnsona.
7. Sortowanie topologiczne.
8. Maksymalny przepływ w sieci: sieć przepływowa; przepustowość; przepływ w sieci;
przepływ netto; przepustowość residualna; sieć residualna; algorytm FordaFulkersona; algorytm Edmondsa-Karpa; przepływ blokujący; algorytm Dinica;
algorytm MKM; sieć przepływowa z wieloma źródłami i wieloma ujściami.
9. Grafy dwudzielne: wykrywanie dwudzielności grafu; maksymalne skojarzenie.
10. Wykrywanie ujemnego cyklu w grafie waŜonym za pomocą algorytmów FloydaWarshalla i Bellmana-Forda.
11. Metaheurystyki optymalizacyjne: przeszukiwanie lokalne w wersji stromej i
zachłannej; symulowane wyŜarzanie; przeszukiwanie tabu; algorytmy genetyczne.
12. Kryptografia i kryptoanaliza: szyfr Cezara; szyfr Vigenere'a; algorytm DES; algorytm
RSA; systemy klucza publicznego.
Treść/Tematy: Ćw./L./P./Sem.
Podczas ćwiczeń rozwiązywane są zadania ilustrujące i utrwalające materiał przedstawiony w
trakcie wykładu.
Załącznik
Data:
01.10.2009r.
Wydanie: I
Symbol:
Z-5.4-1-1
Strona:
Status:
obowiązujący
4/1
KARTA PRZEDMIOTU
Nazwa przedmiotu:
ALGORYTMY I
STRUKTURY DANYCH
2
Kod/nr
AiSD2/NSMW
Metody dydaktyczne
Wykład i ćwiczenia tradycyjne: kreda + tablica, uzupełnione wydrukami pseudokodów
omawianych algorytmów. Wymienione materiały dostępne na stronie przedmiotu znajdującej
się na Platformie Zdalnej Edukacji pod adresem: http://platforma.polsl.pl/rau2/.
Forma egzaminu/zaliczenia przedmiotu
Zaliczenie ćwiczeń udzielane jest na podstawie kolokwium zaliczeniowego w formie
pisemnej. Kolokwium składa się wyłącznie z części zadaniowej. Nie ma moŜliwości poprawy
oceny z kolokwium.
Zaliczenie przedmiotu udzielane jest na podstawie egzaminu w formie pisemnej i oceny z
ćwiczeń. Egzamin składa się z dwóch części: teoretycznej i zadaniowej obejmującej materiał
przedstawiony w trakcie wykładu i ćwiczeń.
Minimalne wymagania do egzaminu /zaliczenia
Warunkiem uzyskania zaliczenia przedmiotu jest otrzymanie z egzaminu oceny co najmniej
3.0. Na podstawie oceny uzyskanej z kolokwium zaliczeniowego student moŜe uzyskać
zwolnienie z egzaminu. Zwolnienie jest udzielane według następujących reguł:
Ocena z kolokwium
Ocena z egzaminu
[3.75; 4.25)
4.0
[4.25; 4.5]
4.5
(4.5; 5.0]
5.0
Ocena końcowa jest wystawiana na podstawie średniej ocen: oceny z egzaminu i oceny z
kolokwium zaliczeniowego.
Literatura
1. Z. Czech, S. Deorowicz, P. Fabian: Algorytmy i struktury danych. Wybrane
zagadnienia, Skrypty uczelniane nr 2400, Wydawnictwo Politechniki Śląskiej,
Gliwice 2007
2. E. M. Reingold, J. Nievergelt, N. Deo: Algorytmy kombinatoryczne, PWN, Warszawa
1985
3. T. H. Cormen, Ch. E. Leiserson, R. L. Rivest: Wprowadzenie do algorytmów, WNT,
Warszawa 1997
4. J. Bentley: Perełki oprogramowania, WNT, Warszawa 1992
5. D. Harel: Rzecz o istocie informatyki: algorytmika, WNT, Warszawa 1992
6. R. Sedgewick, Algorytmy w C++, Wydawnictwo RM Sp. z O. O., Warszawa 1999
Data:
01.10.2009r.
Wydanie: I
Załącznik
Symbol:
Z-5.4-1-1
Strona:
Status:
obowiązujący
5/1
KARTA PRZEDMIOTU
Nazwa przedmiotu:
ALGORYTMY I
STRUKTURY DANYCH
2
Kod/nr
AiSD2/NSMW
7. N. Wirth: Algorytmy + struktury danych = programy, WNT, Warszawa 2000
8. L. Banachowski, K. Diks, W. Rytter: Algorytmy i struktury danych, WNT, Warszawa
1996
9. D. E. Knuth: Sztuka programowania, WNT, Warszawa 2002
10. M. Sysło, N. Deo, J. Kowalik: Algorytmy optymalizacji dyskretnej z programami w
języku Pascal, PWN, Warszawa 1995
11. W. Lipski: Kombinatoryka dla programistów, WNT, Warszawa 1989
12. L. Banachowski, A. Kreczmar, W. Rytter: Analiza algorytmów i struktur danych,
WNT, Warszawa 1989
13. A. V. Aho, J. E. Hopcroft, J. D. Ullman: Projektowanie i analiza algorytmów,
Wydawnictwo Helion, Gliwice 2003
14. D. Jungnickel: Graphs, networks and algorithms, Springer, Berlin, Germany 1999
Zatwierdzono:
…………………………….
…………………………………………………
(data i podpis prowadzącego)
(data i podpis Dyrektora Instytutu/Kierownika Katedry)