60 credits of which 15 credits in mathematics and 25 credits in computer science. Alternatively 45 credits in the Master's Programme in Language Technology. Participation in Program Design and Data Structures of which 9 credits shall be completed, alternatively participation in Algorithms and Data Structures I. Proficiency in English equivalent to the Swedish upper secondary course English 6.
The course extends and deepens your knowledge about algorithms and their analysis. After the course, you can design algorithms based on techniques such as dynamic programming and greedy algorithms, as well as derive their complexity from recursive equations. List of topics: solving recursive equations that describe the algorithm's complexity dynamic programming greedy algorithms graph algorithms: minimum spanning trees, shortest paths string matching.