| | Date | Topic | Reading (CLRS) | Due |
| 1. | 08/26: | Intro & Admin. Karatsuba/Strassen. | | |
| 2. | 08/28: | Asymptotic analysis, solving recurrences | 1-4 | |
| 3. | 09/02: | Probabilistic analysis, Randomized Quicksort | 5,7 | Mini 1 due |
| 4. | 09/04: | Linear-time Selection (randomized and deterministic) | 9 | |
| 5. | 09/09: | Sorting/searching lower bounds | 8.1 | Hwk 1 due |
| 6. | 09/11: | Tight upper/lower bounds II | | |
| 7. | 09/16: | Amortized Analysis | 17 | Mini 2 due |
| 8. | 09/18: | Search trees: B-trees, treaps | 12,18 | |
| 9. | 09/23: | Radix sort, tries + QUIZ | 8 | Hwk 2 pres |
| 10. | 09/25: | Hashing: universal and perfect hashing | 11 | |
| 11. | 09/30: | Dynamic Programming | 15 | Mini 3 due |
| 12. | 10/02: | Graph Algorithms I | 22,23 | |
| 13. | 10/07: | Graph Algorithms II | 21 | Hwk 3 due |
| 14. | 10/09: | Review (optional) | | |
| 15. | 10/14: | MIDTERM | | |
| 16. | 10/16: | Graph Algorithms III | 24,25 | |
| 17. | 10/21: | Network Flows and Matchings I | 26 | Hwk 4 pres |
| 18. | 10/23: | Network Flows and Matchings II | | |
| 19. | 10/28: | Linear Programming | 29 | Mini 4 due |
| 20. | 10/30: | NP-Completeness I | 34 | |
| 21. | 11/04: | **no class** | | |
| 22. | 11/06: | NP-Completeness II | 35 | Hwk 5 due |
| 23. | 11/11: | Approximation Algorithms | | |
| 24. | 11/13: | On-line algorithms+ QUIZ | 31 | |
| 25. | 11/18: | Number-theoretic algs I | | Hwk 6 pres |
| 26. | 11/20: | Number-theoretic algs II | 30 | |
| 27. | 11/25: | Fast Fourier Transform | | Mini 5 due |
| 28. | 12/02: | Machine Learning and Game Theory | | |
| 29. | 12/04: | Game Theory II (zero-sum & general-sum games) | | Hwk 7 due |