Week 0: Optional Review
Week 1: Foundations and Growth of Functions
Week 2: Divide & Conquer and Recurrences
Week 3: Dynamic Programming
Week 4: Greedy Algorithms
Week 5: Midterm Exam
Week 6 : Graph Algorithms
Week 7: Linear Programming
Week 8: NP-Completeness
Week 9: Approximation Algorithms