# Study Materials

Lecture notes from previous years are included below. While they do not follow the current schedule, these are still good resources for the course.

Study material files.
LEC # | TOPICS | LECTURE NOTES
--- | --- | ---
1 | Introduction | No notes for Lecture 1
2 | Linear programming (LP): basic notions, simplex method | (PDF) (Courtesy of Alice Oh. Used with permission.)
3 | LP: Farkas Lemma, duality | (PDF) (Courtesy of Abhinav Kumar and Nodari Sitchinava. Used with permission.)
4 | LP: complexity issues, ellipsoid method | (PDF) (Courtesy of Reina Riemann. Used with permission.)
5 | LP: ellipsoid method | (PDF) (Courtesy of Dennis Quan. Used with permission.)
6 | LP: optimization vs. separation, interior-point algorithm | (PDF) (Courtesy of Bin Song and Hanson Zhou. Used with permission.)
7 | LP: optimality conditions, interior-point algorithm (analysis) | (PDF) (Courtesy of Nick Hanssens and Nicholas Matsakis. Used with permission.)
8 | LP: interior-point algorithm wrap up Network flows (NF) | (PDF) (Courtesy of Jelena Spasojevic. Used with permission.)
9 | NF: Min-cost circulation problem (MCCP) | (PDF) (Courtesy of Jasper Lin. Used with permission.)
10 | NF: cycle cancelling algs for MCCP | (PDF) (Courtesy of Ashish Koul. Used with permission.)
11 | NF: Goldberg-Tarjan alg for MCCP and analysis | (PDF) (Courtesy of Mohammad Hajiaghayi and Vahab Mirrokni. Used with permission.)
12 | NF: cancel-and-tighten Data structures (DS): Binary search trees | (PDF) (Courtesy of David Woodruff and Xiaowen Xin. Used with permission.)
13 | DS: Splay trees, amortized analysis, dynamic tree | (PDF) (Courtesy of Naveen Sunkavally. Used with permission.)
14 | DS: dynamic tree operations | (PDF) (Courtesy of Sanmay Das. Used with permission.)
15 | DS: analysis of dynamic trees NF: use of dynamic trees for cancel-and-tighten | (PDF) (Courtesy of Timothy Danford. Used with permission.)
16 | Approximation algorithms (AA): hardness, inapproximability, analysis of approximation algorithms | (PDF) (Courtesy of Nicole Immorlica and Mana Taghdiri. Used with permission.)
17 | AA: vertex cover (rounding, primal-dual), generalized Steiner tree | (PDF) (Courtesy of Matt Peters and Steven Richman. Used with permission.)
18 | AA: primal-dual alg for generalized Steiner tree | (PDF) (Courtesy of Johnny Chen and Ahmed Ismail. Used with permission.)
19 | AA: derandomization | (PDF) (Courtesy of Shalini Agarwal and Shane Swenson. Used with permission.)
20 | AA: MAXCUT, SDP-based 0.878-approximation algorithm | (PDF 1.2 MB) (Courtesy of William Theis and David Liben-Nowell. Used with permission.)
21 | AA: polynomial approximation schemes, scheduling problem: P||Cmax | (PDF)
22 | AA: approximation Scheme for Euclidean TSP | (PDF - 1.2 MB)* (Courtesy of Salil Vadhan (Thomas D. Cabot Associate Professor of Computer Science). Used with permission.)
23 | AA: multicommodity flows and cuts and embeddings of metrics | (PDF - 7.2 MB)**

* There were no scribe notes for this lecture for the Fall 2001 term. The notes from a previous term cover the same topic and are linked here.

** There were no scribe notes for this lecture for the Fall 2001 term. Section 8 of the notes from a previous term cover the same topic and are linked here.

Linear Programming (PDF - 5.1 MB)

Network Flows (PDF - 3.1 MB)

Approximation Algorithms (PDF - 7.2 MB)

The lecture notes below were provided by students who took the class in an earlier term:

- A Simple Mincut Algorithm (PDF) (Courtesy of Roberto De Prisco (Associate Professor at the University of Salerno, Italy). Used with permission.)
- Euclidean TSP Approximation Scheme (PDF - 1.2 MB) (Courtesy of Salil Vadhan (Thomas D. Cabot Associate Professor of Computer Science). Used with permission.)
- Lattices (PDF - 2.2 MB) (Courtesy of David Wilson. Used with permission.)