| Date | Lecture | Topic | Reference |
| Jan 12 | 1 | Introduction | [Er0] |
| Jan 17 | 2 | Ranking I: Divide & Conquer, mergesort | [DPV2,Er1] |
| Jan 19 | 3 | Ranking II: Randomized divide & conquer, quick sort | [Er1, Ed2] |
| Jan 24 | 4 | Ranking III: Median and order statistics | [DPV2,Er1] |
| Jan 26 | 5 | Data Structure I: Balanced binary search trees | [CLRS12-13] |
| Jan 31 | 6 | Graph Traversal I: Depth first search, topological sort | [DPV3,Er6] |
| Feb 2 | 7 | Guest Lecture I: Thomas Molhave | |
| Graph Traversal II: Breadth first search | [DPV4,Er5] | ||
| Feb 7 | 8 | Shortest paths I: Dijkstra’s algorithm | [DPV4,Er8] |
| Feb 9 | 9 | Shortest paths II: Bellman-Ford, Floyd-Warshall | [DPV4,Er8,9] |
| Feb 14 | 10 | Dynamic Programming I: Sequence alignment | [DPV6,Er3] |
| Feb 16 | 11 | Dynamic Programming II: Knapsack, scheduling | [DPV6,Er3] |
| Feb 21 | 12 | Dynamic Programming III: Reinforcement learning | [RN17] |
| Feb 23 | 13 | Greedy I: Scheduling & compression | [DPV5,Er4] |
| Feb 28 | 14 | Greedy II: Minimum Spanning Tree | [DPV5,Er7] |
| Mar 2 | Exam | Midterm I (Lectures 1-12) | |
| Mar 7 | 15 | Greedy III: Clustering | [CLRS33, Ph8] |
| Mar 9 | 16 | Cuts & Flows I: Max-flow and min-cut | [Er10] |
| Mar 21 | 17 | Cuts & Flows II: Computing flows | [Er10] |
| Guest Lecture II: Alex Beutel | [Er11] | ||
| Mar 23 | 18 | Cuts & Flows III: Maximum and stable matching | max. matching: [Er11.3, CLRS26.3] stable matching: [Roth1982] |
| Mar 28 | 19 | Optimization I: Linear Programming | [DPV7,ErH] |
| Mar 30 | 20 | Optimization II: Duality | [DPV7,ErH] |
| Apr 4 | 21 | Optimization III: Gradient descent | [CLRS33,BV9] |
| Apr 6 | 22 | Intractability: NP-Completeness, reductions | [DPV8,Er12] |
| Apr 11 | 23 | Intractability: NP-Complete problems | [DPV8,Er12] |
| Apr 13 | Exam | Midterm II (Lectures 13-21) | |
| Apr 18 | 24 | Data Structure II: Hashing | [ErApp5] |
| Apr 20 | 25 | Large Scale Computing I: Sketching & streaming | [CY3] |
| Apr 25 | 26 | Large Scale Computing II: Parallel & Distributed algorithms | [CLRS27] |
| May 3 | Exam | Final Exam: 9:00am-12:00pm (All lectures) |