Studenti će biti osposobljeni za pisanje računalnih algoritama koji koriste naprednije strukture podataka, koristeći osnove objektno orijentirane programske paradigme u programskom jeziku C.

Uvodi se pojam asimptotskog ponašanja algoritma. Objašnjava se i ilustrira rekurzija. Nastavlja se s tehnikama pretraživanja te potom slijede svi važniji algoritmi sortiranja. Uvode se dinamičke strukture podataka: jednostruke i višestruko povezane liste. Grade se osnovne strukture podataka poput stoga i reda. Zatim se uvodi tehnika raspršenog adresiranja, binarna stabla te gomila kao posebni slučaj binarnog stabla. Uporaba gomile kao prioritetnog reda se pokazuje na primjeru heap sorta. Uvode se algortimi na grafovima, razni pristupi u programiranju kao što su dinamičko programiranje i backtracking.