CISC 320 Introduction to Algorithms

Syllabus, Spring, 2015


Textbook

An evolving summary of course resources and lecture topics is maintained and is linked from the course Sakai website.


Objectives of the course
  1. To develop a good working knowledge of important algorithms in several domains and the of the tools to analyse their performance characteristics.

  2. To develop an appreciation for – and a good understanding of – general strategies of algorithm analysis and design.

  3. To appreciate lower bound arguments, i.e., demonstrations of best possible performance properties for any algorithm to solve a given problem, regardless of whether an algorithm is known which achieves this best possible performance.

  4. To learn the rudiments of complexity classes (classification of problems by difficulty rather than of their various solutions – algorithms – by cost). In particular,, to appreciate the P = NP question and understand the significance of the "NP Complete" concept.

  5. To understand the relationship of algorithm to implementation, in particular to enhance skill with C/C++ programming and use of shared memory multiprocessing with OpenMP.
Topics
Homework Exams Grading
Policy on plagiarism
University Catalog Course Description:
Additional References: