In this course students will learn the theoretical methods to determine the amount of required resources (time, space and bandwidth) for Algorithm. Students will study the analysis of simple and advanced Algorithms. They will also learn Algorithm design techniques and its time and space complexity. These techniques have a broad spectrum implementations in the area of software design because before writing the software’s it is required to check the complexity as well as the performance of the Algorithms. This course improve critical thinking of students as well as their problem solving skills and abilities.  

Intended outcomes

Students who complete CS 614 with a grade of C or higher should be able to do the following:

  • Find the required amount of resources for an Algorithm.

  • Use mathematical methods for theoretical analysis of Algorithms.

  • Understand problem solving techniques.

  • Understand different design and implementation techniques for Algorithms.