Fakultet tehničkih nauka

Predmet: Uvod u algoritme (17.ESI053)

Osnovne informacije:
 
Kategorija Naučno-stručni
Uža naučna oblast Primenjeno softversko inženjerstvo
ESPB 9

Sticanje opštih znanja o algoritmima i strukturama podataka. Razumevanje složenosti algoritama i učenje brojnih algoritama za česte programerske probleme.

Naučeni osnovni algoritmi i strukture podataka. Stečena znanja o njihovoj implementaciji i praktično razumevanje složenosti izvršavanja.

Osnove algoritama (definicija, osobine, analiza algoritama, opis algoritma, osnovni problemi, složenost algoritma, asimptotske notacije …). Problem pretrage (presudo kod, linearna pretraga, binarna pretraga). Problem sortiranja i algoritmi sortiranja (selection sort, Insertion sort, rekurzija i tehnika podeli i vladaj, merge sort, quicksort, Heap struktura i heapsort, red sa prioritetima, …). Algoritmi sortiranja linearne složenosti (counting sort, radix sort, bucket sort). Redosledna statistika (opis problema, minimum i maksimum, medijana, select algoritam). Strukture podataka (osnovne strukture podataka, stek i red, povezane liste, tipovi lista, operacije, implementacija lista, stabla, binarna stabla, binarno stablo pretrage, AVL stablo, …). Heširanje (rečnik podataka, operacije, funkcije heširanja, kolizije, otvoreno adresiranje i ulančavanje, asimptotska složenost algoritma, …). Grafovi (definicija, primena i tipovi grafova, usmereni aciklični graf, predstavljanje grafova (matrica i lista susedstva). Algoritmi rada sa grafovima (topološko sortiranje, obilazak grafa, pretraga u širinu, pretraga u dubinu, …). Najkraći put u težinskom grafu (najkraći put u DAG, Dijkstra algoritam, Bellman-Ford algoritam, …). Klasifikacije problema (P i NP problemi, NP-kompletan problem, NP-teški problemi, eksponencijalni problemi, primeri problema). Dinamičko programiranje (primena, primeri). Paralelni algoritmi (sekvencijalni i paralelni algoritmi, Amdalov zakon, poteškoće u implementaciji, primeri). Primeri algoritama sa primenama u kriptografiji, kompresiji podataka, rad sa stringovima, ...)

Predavanja; auditorne i računarske vežbe; konsultacije.

Autori Naziv Godina Izdavač Jezik
Wirth, N. Algorithms and data structures 1986 Prentice-Hall, Englewood Cliffs Engleski
Hotomski Petar, Malbaški Dušan Matematička logika i principi programiranja 2000 Univerzitet, Novi Sad Srpski jezik
Yatsko, A., Suslow, W. Insight into Theoretical and Applied Informatics : Introduction to Information Technologies and Computer Science 2015 De Gruyter Open, Berlin Engleski
A. Erdeljan Štampani materijal koji pokriva izlaganja i vežbe 2016 Srpski jezik
Knuth, D.E. The Art of Computer Programming 1998 Addison-Wesley, Upper Saddle River Engleski
Thomas H. Cormen Algorithms Unlocked 2013 MIT Press Engleski
Stojaković Mirko Algoritmi i automati 1972 Radnički univerzitet "Radivoj Ćirpanov", Novi Sad Srpski jezik
Cormen, T.H. et al. Introduction to Algorithms 2009 MIT Press, Cambridge Engleski
Uhr, Leonard Algorithm-Structured Computer Arrays and Networks 1984 Academic Press Engleski
Predmetna aktivnost Predispitna Obavezna Broj poena
Predmetna aktivnost
Usmeni deo ispita
Predispitna
Ne
Obavezna
Da
Broj poena
30.00
Predmetna aktivnost
Predmetni projekat
Predispitna
Da
Obavezna
Da
Broj poena
30.00
Predmetna aktivnost
Test
Predispitna
Da
Obavezna
Da
Broj poena
10.00
Predmetna aktivnost
Test
Predispitna
Da
Obavezna
Da
Broj poena
10.00
Predmetna aktivnost
Test
Predispitna
Da
Obavezna
Da
Broj poena
10.00
Predmetna aktivnost
Test
Predispitna
Da
Obavezna
Da
Broj poena
10.00
Predavanja
Računarske vežbe
Računarske vežbe
Računarske vežbe
Računarske vežbe