Objectives

This course is designed to provide students with understanding of the complexity and efficiency of various algorithms that may be useful in their future professional life. Major algorithm design techniques will be discussed in detail. Chosen topics of probabilistic algorithms, advanced network algorithms, as well as certain parallel and distributed algorithms will be introduced. Students will gain hands on experience through programming assignments.

The assessment how well the course objectives were met will be based on the following: