|
Below are links to the lecture slides. All readings refer to Algorithm Design by Jon Kleinberg and Éva Tardos unless otherwise specified. A few sample chapters are provided by Pearson Addison-Wesley.
TOPIC | SLIDES | READINGS | DEMOS |
---|---|---|---|
Introduction (administrative information) |
1up · 4up | Preface · ToC | – |
Stable Matching (Gale-Shapley) |
1up · 4up | Chapter 1 | Gale-Shapley |
Algorithm Analysis (big-Oh notation) |
1up · 4up | Chapter 2 | – |
Greedy Algorithms I (basic techniques) |
1up · 4up | Chapter 4 | interval scheduling · interval partitioning |
Greedy Algorithms II (shortest paths and MSTs) |
1up · 4up | Chapter 4 | Dijkstra · red-blue · Prim · Kruskal · Borůvka · Edmonds |
Divide and Conquer I (sorting and selection) |
1up · 4up | Chapter 5 | merging · inversions · quickselect |
Divide and Conquer II (integer and polynomial multiplication) |
1up · 4up | Chapter 5 | – |
Dynamic Programming I (basic techniques) |
1up · 4up | Chapter 6 | – |
Dynamic Programming II (sequence alignment, Bellman-Ford) |
1up · 4up | Chapter 6 | – |
Duality Warmup (longest increasing subsequence) |
1up · 4up | – | – |
Network Flow I (maximum flow theory) |
1up · 4up | Chapter 7 | Ford-Fulkerson · pathological |
Network Flow II (maximum flow applications) |
1up · 4up | Chapter 7 | – |
Network Flow III (assignment problem) |
1up · 4up | Chapter 7 | – |
Data Structures I (amortized analysis) |
1up · 4up | – | – |
Data Structures II (binary and binomial heaps) |
1up · 4up | – | binary heap · heapify |
Data Structures III (Fibonacci heaps) |
1up · 4up | – | – |
Data Structures IV (union-find) |
1up · 4up | Section 5.1.4 (Dasgupta et al.) |
– |
Intractability I (polynomial-time reductions) |
1up · 4up | Chapter 8 | – |
Intractability II (P, NP, and NP-complete) |
1up · 4up | Chapter 8 | – |
Intractability III (Coping with Intractability) |
1up · 4up | Section 10.2, 11.8 | – |
Advice.
The slides are intended for the lecture presentations;
for reference, read the indicated sections from
Algorithm Design.
An effective strategy
is to skim the textbook before the lecture, then read it thoroughly
soon afterwards.
We recommend printing the slides before lecture and
annotating them during lecture.
Online viewing and printing. These lecture slides are suitable for online viewing (one per page) or printing (four per page).
Errata. Extra credit will be awarded for identifying any errata in the lectures slides and emailing the instructor.