Lecture 
Topic 
Suggested readings/references 

1 (9/6) 
Introduction, course objectives, NPhardness and approximation 
Revise chapters 18 from Kleinberg and Tardos; lecture notes

2 (9/8) 
Greedy based approximations (vertex cover; set cover) 
lecture notes

3 (9/13) 
Set cover contd. 
set cover lecture notes

4 (9/15) 
DPbased approximations (Knapsack) 
knapsack lecture notes

5 (9/20) 
Random variables and events; Karger's mincut algorithm 
lecture notes 
6 (9/22) 
Random variables and events; Coupon Collector's problem 
Revise sections 13.2 and 13.3 from Kleinberg and Tardos 
7 (9/27) 
Lecture cancelled 

8 (9/29) 
Linear programming, and LP relaxations 
lecture notes 
9 (10/04) 
LP rounding 
lecture notes 
10 (10/06) 
Randomized rounding 
lecture notes 
11 (10/11) 
Concentration bounds 
lecture notes here and here 
12 (10/13) 
Proof of the Chernoff bound and applications 
lecture notes 
13 (10/18) 
Streaming algorithms: Flajolet Martin 
Charikar's notes, Chakrabarti's notes 
14 (10/20) 
Streaming algorithms: AlonMatiasSzegedy sketch 
Chekuri's notes, McGregor's slides 
15 (10/25) 
Dimension reduction 
Harvey's notes, Chapter 1 in this book 
16 (10/27) 
JohnsonLindenstrauss Lemma 
Harvey's notes, Chapter 1 in this book 
17 (11/1) 
JL Lemma contd., Singular Value Decomposition 
Chapters 1, 2 in this book 
18 (11/3) 
No lecture 

19 (11/8) 
Singular Value Decomposition 
Chapter 2 in this book 
20 (11/10) 
Online algorithms 
lecture notes 
21 (11/15) 
Graph sparsification 
Harvey's lecture notes 
22 (11/17) 
Online algorithms 
lecture notes 
23 (11/22) 
Online prediction: weighted majority algorithm, Hedge algorithm 
Kleinberg's notes 
24 (11/29) 
Online prediction: multiarmed bandits 
Kleinberg's notes 
25 (12/01) 
LP duality 
lecture notes 
26 (12/06) 
Primaldual algorithms 
lecture notes 
27 (12/08) 
Online matching 
Kleinberg's notes 
28 (12/13) 
PAC learning, Occam's razor, boosting 
Notes here and here 