Algorithms & Data Structures 2
Persone
Docente titolare del corso
Assistente
Descrizione
The course covers a variety of topics on algorithms and data structures building upon the material of the first year course “Algorithms and Data Structures”. The course will extend the students' knowledge on fundamental algorithms by focusing on several important topics such as data structures for disjoint sets and union-find, amortized analysis, augmenting data structures, interval trees, dynamic programming, graph algorithms such as shortest paths, max-flow/min-cut, brief introduction to NP completeness.
Obiettivi
Algorithms and data structures are fundamental to computer science. The performance of any software system depends on the efficiency and correctness of its underlying algorithms and data structures. This course will extend the students' knowledge on fundamental algorithms by considering basic and more advanced topics. It will also strengthen the students' ability to design efficient algorithms on their own.
Modalità di insegnamento
In presenza
Impostazione pedagogico-didattica
Lectures, exercise labs, homework sets on algorithmic problem solving
Modalità d’esame
The course grade is determined by the results of homework assignments, a midterm exam, and a final exam.
Bibliografia
- Kleinberg, Tardos. Algorithm Design. Addison Wesley, 2013.
Offerta formativa
- Bachelor of Science in Informatics, Lezione, A scelta, 3° anno