CSC373H1
UTSGAlgorithm Design, Analysis & Complexity
Standard algorithm design techniques: divide-and-conquer, greedy strategies, dynamic programming, linear programming, randomization, network flows, approximation algorithms. Brief introduction to NP-completeness: polynomial time reductions, examples of various NP-complete problems, self-reducibility. Additional topics may include approximation and randomized algorithms. Students will be expected to show good design principles and adequate skills at reasoning about the correctness and complexity of algorithms.
View full details on the UofT Academic CalendarCourse Info
Reviews (4)
Required CS course. Sam is an incredible lecturer — I'd probably rank him top 3 in teaching ability. But this course was a nightmare. Early morning lectures, no recordings, incredibly dense content, incredibly difficult assessments. More all-nighters than all other courses combined.