||Tue 14:00-15:00, Wed 11:00-12:00|
This course provides an in-depth introduction to the design and analysis of advanced algorithms for
solving computational problems. It is expected that, upon completion of this course, the students will
achieve the following learning objectives:
Become fluent in analyzing algorithms and data structures in terms of correctness and required computational
- Comprehensively understand, use, and manipulate advanced and efficient data structures.
- Develop a comprehensive and in-depth understanding of common algorithm design techniques.
- Gain the necessary skills to be able to design and analyze algorithms to solve new problems.
- Understand how to formulate different problems in terms of each other.
- Develop a comprehensive understanding of the theory of computational complexity.
- Have fun! (make no mistake though, as you have already experienced in Algorithms I, this is an
important and rather challenging course that has to be taken seriously)
For more information, please refer to the course syllabus [PDF].