0x08 graphic

S Y L A B U S P R Z E D M I O T U

NAZWA PRZEDMIOTU: Algorytmy i struktury danych

Kod przedmiotu: .......................................................................................................................................................................

Podstawowa jednostka organizacyjna (PJO) (prowadząca kierunek studiów): Wydział Cybernetyki

Kierunek studiów:  Informatyka

Specjalność: wszystkie specjalności kierunku Informatyka

Rodzaj studiów:  studia pierwszego stopnia

Forma studiów:  studia stacjonarne

Język realizacji: polski

Sylabus ważny dla naborów od roku akademickiego 2008/2009

1. REALIZACJA PRZEDMIOTU

Osoby prowadzące zajęcia:

dr hab. inż. Andrzej Walczak

dr hab. inż. Kazimierz Worwa

dr inż. Marcin Wierzbicki

mgr inż. Hugo Dworak

mgr inż. Paweł Moszczyński

mgr inż. Sławomir Wysocki

mgr inż. Piotr Kędzierski

PJO/instytut/katedra/zakład Wydział Cybernetyki

Instytut Systemów Informatycznych

Zakład Inżynierii Oprogramowania

2. ROZLICZENIE GODZINOWE

semestr

forma zajęć, liczba godzin/rygor
(x egzamin, + zaliczenie, # projekt)

punkty
ECTS

razem

wykłady

ćwiczenia

laboratoria

projekt

seminarium

II

60x

20

10

20+

5

razem

60

30

10

20

5

3. PRZEDMIOTY WPROWADZAJĄCE WRAZ Z WYMAGANIAMI WSTĘPNYMI

.

4. ZAŁOŻENIA I CELE PRZEDMIOTU

5. METODY DYDAKTYCZNE

6. TREŚCI PROGRAMOWE

lp

temat/tematyka zajęć

liczba godzin

wykł.

ćwicz.

lab.

proj.

semin.

Techniki projektowania algorytmów.

Technika „dziel i rządź”. Programowanie dynamiczne. Algorytmy zachłanne. Przeszukiwanie z nawrotami. Heurystyki.

2

Złożoność obliczeniowa algorytmów.

Pojęcie złożoności obliczeniowej: złożoność czasowa, złożoność pamięciowa. Asymptotyczna złożoność czasowa: O-notacja, -notacja, -notacja. Złożoność optymistyczna, pesymistyczna i średnia. Złożoność zamortyzowana. Ocena złożoności obliczeniowej algorytmów iteracyjnych. Ocena złożoności obliczeniowej algorytmów rekurencyjnych.

4

4

Listy.

Rodzaje struktur listowych. Podstawowe operacje na listach. Metody implementacja list.

2

2

4

Kolejki.

Kolejka LIFO (stos). Kolejka FIFO. Kolejka priorytetowa. Podstawowe operacje na kolejkach. Implementacja kolejek.

2

2

Drzewa binarne.

Implementacja drzew binarnych. Podstawowe operacje na drzewach binarnych. Drzewa BST. Drzewa AVL. Drzewa czerwono-czarne. Kopce.

6

4

4

Drzewa wielokierunkowe.

Pojecie i własności B-drzewa. Podstawowe operacje na B-drzewach. Rodzina B-drzew.

2

Algorytmy sortowania wewnętrznego.

Sortowanie przez wstawianie. Sortowanie przez wybieranie. Sortowanie przez zamianę. Sortowanie przez kopcowanie. Sortowanie szybkie. Sortowanie Shella. Analiza złożoności algorytmów sortowania.

4

4

Algorytmy sortowania zewnętrznego.

Sortowanie przez podział. Sortowanie przez łączenie.

2

2

Podstawowe algorytmy grafowe.

Reprezentacja grafów. Przeszukiwanie wszerz. Przeszukiwanie w głąb. Wyznaczanie najkrótszych dróg.

4

4

Tablice z haszowaniem.

Haszowanie. Tablice z adresowaniem bezpośrednim. Tablice z haszowaniem. Funkcje haszujące. Metody usuwania kolizji.

1

Problemy obliczeniowo trudne

Klasy złożoności problemów. NP-zupełność. NP-zupełność i  redukowalność. Nierozstrzygalność.

1

RAZEM

30

10

20

7. LITERATURA

Podstawowa:

  1. Cormen T.H., Leiserson C.E., Rivest R.L., Stein C.: Wprowadzenie do algorytmów. WNT, Warszawa, 2005.

  2. Drozdek A.: C++. Algorytmy i struktury danych. Wydawnictwo Helion, Gliwice, 2004.

  3. Harris S., Ross J.: Algorytmy od podstaw. Wydawnictwo Helion, Gliwice, 2006.

  4. Banachowski L., Diks K., Rytter W., Algorytmy i struktury danych. WNT, Warszawa, 2006.

Uzupełniająca:

  1. Aho A.V., Hopcroft J.E., Ullman J.D.: Algorytmy i struktury danych. Wydawnictwo Helion, Gliwice, 2003.

  2. Aho A.V., Hopcroft J.E., Ullman J.D.: Projektowanie i analiza algorytmów. Wydawnictwo Helion, Gliwice, 2003.

  3. Kotowski P.: Algorytmy + struktury danych = abstrakcyjne typy danych. Wydawnictwo BTC, Warszawa, 2006.

  4. Loudon K.: Algorytmy w C.: Wydawnictwo Helion, Gliwice, 2003.

  5. Wirth N.: Algorytmy + struktury danych = programy. WNT, Warszawa, 2004.

  6. Wróblewski P.: Algorytmy, struktury danych i techniki programowania. Wydawnictwo Helion, Gliwice, 2006.

8. FORMA I WARUNKI ZALICZANIA PRZEDMIOTU

Suma punktów

< 16

16 - 18

19 - 21

22 - 24

25 - 27

> 27

Ocena

2

3

3,5

4

4,5

5

0x08 graphic
0x08 graphic

1

kierownik jednostki organizacyjnej odpowiedzialnej za przedmiot

.................................................

prof. dr hab. inż. Andrzej AMELJAŃCZYK

"Z A T W I E R D Z A M"

Dziekan Wydziału ......
prowadzącego kierunek studiów

……………………………………………………………

dr hab. inż. Ryszard Antkiewicz, prof. nzdw. WAT

Warszawa, dnia ..........................

autor sylabusa

..........................................................

dr hab. inż. Kazimierz WORWA , prof. ndzw. WAT