Assigned readings are from the course textbook:
Cormen, Thomas, Charles Leiserson, Ronald Rivest, and Clifford Stein. Introduction to Algorithms. 3rd ed. MIT Press, 2009. ISBN: 9780262033848.
LEC #  TOPICS  READINGS  KEY DATES 

1  Introduction, median finding, solving recurrences  
2  Median finding, interval scheduling  16.1  Problem set 1 out 
3  Greedy algorithms, minimum spanning trees: Kruskal’s  23, B.4–B.5, 16.2  
4  Minimum spanning trees: Prim’s  6, 21 
Problem set 1 due Problem set 2 out 
5  Fast Fourier transform  30 
Problem set 2 due Problem set 3 out 
6  Dynamic programming, all pairs shortest paths: FloydWarshall  25 (introduction), 25.2  
7  Allpairs shortest paths II: Johnson’s  25.3  Problem set 3 due 
Quiz 1  
8  Randomized algorithms  5, 9.2  Problem set 4 out 
9  Randomized algorithms, high probability bounds  C, 7.3  
10  Hashing  11, 17 (introduction), 17.1 
Problem set 4 due Problem set 5 out 
11  Amortized analysis  17  
12  Competitive analysis 
Problem set 5 due Problem set 6 out 

13  Network flows  26.1, 26.2  
14  Preparation for takehome exam  Problem set 6 due  
Quiz 2 (takehome)  
15  van Emde Boas data structure  20  Problem set 7 out 
16  Advanced data structures: disjoint sets  21 (21.4 is optional)  
17  P vs. NP  34 
Problem set 7 due Problem set 8 out 
18  Approximation algorithms  35 (except for 35.4)  
19  Compression  16.3 
Problem set 8 due Problem set 9 out 
20  Sublinear time algorithms  
21  Clustering  Problem set 9 due  
22  Derandomization  
23  Computational geometry  33 (except for 33.3) 