COS 423
Theory of Algorithms
Spring 2013


Course Information   |   Problem Sets   |   Lecture Slides   |   Precepts

LECTURES

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.