Plan for Lectures

Topics to be Covered

  • Amortized Analysis: Union find, Splay Trees (2 lectures)
  • Randomized Algorithms: balls and bins, hashing, data streaming, sublinear algorithms (4 lectures).
  • Randomized Algorithms: Concentration inequalities, graph sparsification, dimension reduction (3 lectures).
  • Randomized Algorithms: polynomial identity testing, randomized algorithms for matching problems (1 lecture).
  • Randomized Algorithms: random walks, mixing time & page rank (1 lecture).
  • Linear programming & duality theorems (1 Lecture)
  • Approximation Algorithms: linear programming relaxation & rounding, approximation algorithms for TSP (2 lectures).
  • Semidefinite Programming (1 Lecture)
  • Approximation Algorithms: max cut, hardness of approximation (2 lectures)
  • Multiplicative updates method (1 lecture).
  • Online algorithms (2 Lectures)
  • Algorithms for Linear Algebra (1 lecture)
  • Distributed Computing (1 lecture)
  • Zero-Knowledge Proofs (1 Lecture)

Lecture Schedule

Date Topics Slides
Lecture 0 May 11 Introduction & Overview of Course PDF
Lecture 1 May 11 Amortized Analysis: Union Find PDF
Lecture 2 May 13 Amortized Analysis: Splay Trees PDF
Lecture 3 May 18 Concentration Inequalities PDF
Lecture 4 May 20 Balls and Bins PDF
Lecture 5 May 25 Hashing PDF
Lecture 6 May 27 Data Streaming PDF
Lecture 7 June 1 Sublinear Time Algorithms PDF
Lecture 8 June 3 Graph Sparsification PDF
Lecture 9 June 8 Dimension Reduction PDF
Lecture 10 June 10 Verifying Polynomial Identities, Parallel Algorithms for Matching Problems PDF
Lecture 11 June 15 Random Walks, Mixing Time, Page Rank PDF
Lecture 12 June 17 Linear Programming & Duality Theorems (min-max principles) PDF
Lecture 13 June 22 Multiplicative Updates Method PDF
Lecture 14 June 24 Linear Programming Relaxation and Rounding PDF
Lecture 15 June 29 Approximation Algorithms for Travelling Salesman Problem PDF
Lecture 16 July 6 Semidefinite Programming PDF
Lecture 17 July 8 Goemans-Williamson SDP Relaxation for Max Cut PDF
Lecture 18 July 13 Hardness of Approximation PDF
Lecture 19 July 15 Online Algorithms: Paging PDF
Lecture 20 July 20 Online Algorithms: k-server problem PDF
Lecture 21 July 22 Matrix Multiplication & Exponent of Linear Algebra PDF
Lecture 22 July 27 Distributed Algorithms: Consensus PDF
Lecture 23 July 29 Zero-Knowledge Proofs PDF
Lecture 24 August 4 Conclusion PDF

Suggested Reading

Topics Suggested Reading
Lecture 0 Introduction & Overview of Course PDF
Lecture 1 Amortized Analysis: Union Find Anna’s notes
Lecture 2 Amortized Analysis: Splay Trees Anna’s notes
Lecture 3 Concentration Inequalities Lap Chi’s notes
Lecture 4 Balls and Bins Lap Chi’s notes
Lecture 5 Hashing Lap Chi’s notes
Lecture 6 Data Streaming Woodruff’s notes & Lap Chi’s notes
Lecture 7 Sublinear Time Algorithms Ronitt’s notes
Lecture 8 Graph Sparsification Lap Chi’s notes
Lecture 9 Dimension Reduction Lap Chi’s notes
Lecture 10 Verifying Polynomial Identities, Parallel Algorithms for Matching Problems Lap Chi’s notes
Lecture 11 Random Walks, Mixing Time, Page Rank Lap Chi’s notes & Lap Chi’s notes
Lecture 12 Linear Programming & Duality Theorems (min-max principles) Lap Chi’s notes
Lecture 13 Multiplicative Updates Method Yaron’s notes & Lap Chi’s notes
Lecture 14 Linear Programming Relaxation and Rounding Luca’s notes
Lecture 15 Approximation Algorithms for Travelling Salesman Problem Luca’s notes
Lecture 16 Semidefinite Programming Notes
Lecture 17 Goemans-Williamson SDP Relaxation for Max Cut Notes
Lecture 18 Hardness of Approximation Luca’s survey
Lecture 19 Online Algorithms: Paging Karger’s notes
Lecture 20 Online Algorithms: k-server problem Karger’s notes
Lecture 21 Matrix Multiplication & Exponent of Linear Algebra The class notes
Lecture 22 Distributed Algorithms: Consensus Nancy Lynch’s course notes
Lecture 23 Zero-Knowledge Proofs Goldreich’s book, Chapter 6
Lecture 24 Conclusion N/A
Next