Jan 6 
Administrivia and Course Overview. 
Chapters 13, Chapter 4.4, Chapter 5.15.2 
Jan 8 
Minimum Spanning Trees. Kruskal's Algorithm. UnionFind Data structure 
Chapter 4.54.6. Section 5.1.4 of this book (from Dasgupta, Papadimitriou and Vazirani). Slides 
Jan 13 
Rest of UnionFind. Heaps. 
Chapter 2.5. Chapter 4.3. See slides for Jan 8 lecture. 
Jan 15 
Optimal Cache Replacement. Greedy approximation algorithms  kcenter.  Chapter 4.4. Chapters 11.1  11.2. See slides for Jan 8 lecture. 
Jan 20 
Greedy approximation algorithms  set cover. Dynamic Programming: String Reconstruction. Longest Common Subsequence. 
Chapter 11.111.2. Chapter 6. Slides 
Jan 22 
Subset Sum. Independent Set in Trees. All Pairs Shortest Paths. 
Chapter 6. See Slides for Jan 20 lecture. 
Jan 27 
Dynamic Programming Problem Session. 

Jan 29 
No lecture. 

Feb 3 
Midterm. 

Feb 5 
Max Flows. Max Flow Min Cut Theorem. FordFulkerson. 
Chapter 7. Slides 
Feb 10 
Midterm Solutions and Grading Scheme Discussed. Capacity Scaling. 
See Slides for 2/5 lecture. 
Feb 12 
Preflow Push. 
See Slides for 2/5 lecture. 
Feb 17 
Bipartite Matching. 
Chapter 7 Slides 
Feb 19 
Randomized Algorithms. Karger's Min Cut. Expectation. 
Chapter 12 Slides 
Feb 24 
Linearity of Expectation. Randomized Selection and Sorting. 
Chapter 13. Slides for 2/19. 
Feb 26 
Problem Session. 
