Image

Core courses
Course contents: Algorithms and computational problems, Analysis of algorithms, Asymptotic notations, Recurrence relations. Design techniques: Divide-and-Conquer, Greedy algorithms, Dynamic programming. Graph algorithms: Breadth first search, Depth first search, Topological sorting, Minimum spanning trees, Shortest paths. Introduction to complexity theory: P, NP, and NP-complete problems, Polynomialtime reductions. Special topics: Approximation algorithms, Randomized algorithms and Computational geometry.
Assessment: Assignments with weight 30%-40% and written exam.