Algorithm Analysis and Design

This course is set for junior graduate students, who are expected to have good understandings of mathematics and knowledge in basic theoretical computer science.

The course introduces advanced technologies concerning the design and analysis of algorithm, as students will read theses in the field of algorithm design. It also helps students to determine their future research interests through understandings of algorithm.

Topics covered in this course are: review of basic technologies of algorithm design including divide-and-conquer algorithms and dynamic programming; introduction of the design and analysis of random algorithm and approximation algorithm; introduction of the current research on important issues including linear algorithm, online algorithm, and data structure in computational geometry.

The course is mainly conducted through lectures and series seminars, supplemented by featured discussions. The students are required to take thesis reading exercises and give summary reports, with a view to helping them find their future research interests.