Skip to main content

Syllabus

Course Description​

The study of efficient algorithms and effective algorithm design techniques. Program design with emphasis on pragmatic and mathematical aspects of program efficiency. Topics include

  • Divide and Conquer Algorithms,
  • Eecurrences,
  • Greedy Algorithms,
  • Dynamic Programming,
  • Graph Search and Backtrack,
  • Problems Without Algorithms,
  • NP-completeness and its implications.

Prereq: CS240 and (MATH239 or 249); Computer Science and BMath (Data Science) students only.

Antireq: CS231, ECE406

Course Source​