Algoritmi i strukture podataka
ECTS: 7 · Semestar: 3 · Ukupna satnica: 75 h
Opis kolegija
Strukturirani i nestrukturirani podaci. Definicije algoritama, povijest, konvencije i zapisivanje algoritama. Analiza algoritama Primjena rekurzije u algoritmima Jednostavne struktura podataka. Statičke i dinamičke strukture podataka Jednostruko i dvostruko povezane liste. Struktura podataka – Stog Struktura podataka Red Složene strukture podataka – Stabla Binarno stablo Gomila i prioritetni red kao binarno stablo Algoritmi za sortiranje. Grafovi. Algoritmi pretraživanja. Sekvencijalno pretraživanje, binarno pretraživanje i pretraživanje na binarnom stablu. Tehnike direktnog adresiranja i indeksiranja Raspršeno (Hash) adresiranje. Primjena Hash tehika u enkripciji podataka,
Ishodi učenja
- usporediti postojeće algoritme te analizirati složenije algoritme.
- razviti složenije rekurzivne algoritme.
- kreirati rješenja bazirana na jednostavnijim strukturama podataka (lista, stog i red).
- osmisliti rješenja bazirana na složenijim strukturama podataka (stablo, gomila i prioritetni red).
- predložiti najbolja programska rješenja bazirana na algoritmima sortiranja.
- kombinirati najbolje metode za pretraživanje i korištenje tehnika adresiranja.
Literatura
Obavezna literatura
- M. Slamić: Elektronički sadržaji predavanja (PPT prezentacije) na web stranici predmeta na Tehničkom veleučilištu u Zagrebu, 2012. www.tvz.hr.
R. Sedgewick: Algorithms in C/C++, Parts 1-4: Fundamentals, Data Structure, Sorting, Searching, Third Edition..
Dodatna literatura
- Robert L. Kruse, Alexander J. Ryba: Data Structures and Program Design in C++, Prentice-Hall International, 2000.
R. Manger, M. Marušić: Strukture podataka i algoritmi, skripta, 3. izdanje, PMF-MO, 2007. http://web.math.pmf.unizg.hr/nastava/spa/.
Weiss: Data Structures and Algorithm Analysis in C, Addison-Wesley, 1997