Semestar: 2
ECTS: 6
Predavanja: 30
Vježbe: 45
Samostalni rad: 105
Šifra kolegija: 23-000-0114
Semestar: 2
ECTS: 6
Predavanja: 30
Vježbe: 45
Samostalni rad: 105
Šifra kolegija: 23-000-0114
Naziv predmeta:
Strukture podataka i algoritmi
Nastavnici:
Opis:
Ovaj kolegij upoznaje studente sa strukturama podataka i algoritmima iz dvije perspektive: proučavajući koncepte na kojima su temeljeni te načine kako ih primijeniti za rješavanje svakodnevnih programerskih problema.
To je temeljni kolegij studijskog programa te nadograđuje i proširuje znanje, razumijevanje i vještine stečene u kolegiju Programiranje u prvom semestru kako bi omogućio studentima rješavanje složenijih problema iz područja programiranja te ih pripremio za kolegije koji slijede. Vještine stečene u ovom kolegiju značajno će doprinijeti razvoju studenata kao profesionalaca. Glavni ciljevi kolegija su:
Naučiti o osnovnim apstraktnim tipovima podataka i algoritmima.
Naučiti koristiti konkretne implementacije u odabranom programskom jeziku.
Naučiti rješavati složenije programerske probleme.
Naučiti strukturirati i ispravljati pogreške pravilno strukturiranih softverskih rješenja.
Kolegij se izvodi u odabranom programskom jeziku i odabranom suvremenom integriranom razvojnom okruženju. Vrednovanje kolegija temelji se na rješavanju niza manjih praktičnih zadataka u odabranom programskom jeziku i integriranom razvojnom okruženju.
Studenti će naučiti:
apstraktne jednostavne tipove podataka kao što su liste, povezane liste, stogovi, redovi itd.
apstraktne složenije tipove podataka kao što su raspršene tablice, rječnici temeljeni na stablima, itd.
konkretne implementacije u odabranom programskom jeziku.
algoritme koji obrađuju strukture podataka kao što su modifikacija, pretraživanje, sortiranje, ponavljanje, particioniranje itd.
izraziti i interpretirati složenost algoritma.
ispravno strukturirati i otkloniti pogreške u programskim rješenjima.
Literatura:
Obavezna literatura:
1. O´Dwyer, A. (2017) Mastering the C++17 STL: Make full use of the standard library components in C++17. Birmingham: Packt Publishing.
2. Šribar, J., Motik, B. (2014) Demistificirani C++. 4th edn. Zagreb: Element.
Dopunska literatura:
1. Stroustrup, B. (2013) C++ Programming Language. 4th edn. Boston: Addison-Wesley Professional.
2. Cormen, T. (2009) Introduction to Algorithms. 3rd edn. Cambridge: MIT Press.