Skip to main content.

Schedule

Lecture slides will be posted after class.

Most (non-exam) dates are tentative. The schedule will be updated as the semester progresses.

WEEK DAY Slides Topic & Reading Assignments

Week 1

Jan 07

Slides
First two pages of preface

Introduction to Algorithms, Proofs, Algorithm Analysis
Why Do We Do Proofs? - Check out the annotated slides. You can download the whole lecture/resources and then listen to the lecture.

Guides to Proofs, including by induction

Problem: Stable Matching
Shapley wins Nobel prize in Economics

Kleinberg & Tardos: Preface, Chapters 1--2

Read, summarize on Wiki first two pages of Preface, Chapter 1.1, Chapter 2.1, 2.2 - Due Monday, January 14 at 11:59 p.m.

Problem Set 1 - Due Friday, Jan 18

Jan 09

Slides
Chapter 1.1

Jan 11

Drop/Add ends

Slides
Chapter 2.1-2.2

Week 2

Jan 14

Slides
Chapter 2.2, 2.3

Asymptotic Order of Growth

Implementing Gale-Shapley Algorithm

Survey of Common Running Times

Kleinberg & Tardos: Chapter 2

Wiki due Monday

Problem Set 1 due Friday before class

Problem Set 2 handed out

Jan 16

Slides
Chapter 2.3

Jan 18

Slides
Chapter 2.4

Week 3

Jan 21

Martin Luther King Jr. Day

Jan 23

Slides
Chapter 2.5

Priority queues and Heaps
Kleinberg & Tardos, Chapter 2

Graphs
Kleinberg & Tardos: Chapter 3

Wiki due Monday at 11:59 p.m. (2.3, 2.4)

Problem Set 2 due Friday
PS2 FAQ
Starter Python 3 Code for Chapter 2, Exercise 6

Problem Set 3 handed out

Jan 25

Slides
Chapter 2.5, Chapter 3.1

Week 4

Jan 28

Slides
Chapter 3.1-3.2

Graphs: Breadth-First Search, Depth-First Search, Bipartiteness
K & T: Chapter 3

Wiki due Monday (2.5, 3.1)

Problem Set 3 due Friday
PS3 FAQ

Problem Set 4 handed out

Jan 30

Slides
Chapter 3.2-3.3

Feb 01

Slides
Chapter 3.3, 3.4

Week 5

Feb 04

Slides
Chapter 3.5-3.6

Directed Graphs
Topological Ordering
K & T: Chapter 3

Greedy Algorithms: Intro
K & T: Chapter 4

Wiki due Tuesday (finishing Chapter 3 -- 3.2-3.6)

Problem Set 4 due Friday

PS4 FAQ

Exam 1 handed out.

Feb 06

Slides
Chapter 3.5, Chapter 4: front matter, section 1

Feb 08

Slides
Chapter 4.1

Week 6

Feb 11

Slides
Chapter 4.1, 4.2

Greedy Algorithms: Interval scheduling, Minimizing max lateness, Shortest paths

How to write Greedy Stays Ahead Proofs and Greedy Exchange Proofs

Exam due Friday
Exam 1 FAQ

No Wiki

Problem Set 5 given out

Feb 13

Exam 1 - Work period, due Friday at 5 p.m.

Feb 15

Slides
Chapter 4.4

Greedy Algorithms: Interval scheduling, Minimizing max lateness, Shortest paths

How to write Greedy Stays Ahead Proofs and Greedy Exchange Proofs (continued)

Week  

Feb 18

Washington Break

Feb 20

Feb 22

Week 7

Feb 25

Slides
Chapter 4.4, 4.5

Greedy Algorithms:
Shortest Path, Minimum Spanning Trees, Union-Find Data Structure, Clustering
Chapter 4

Wiki for Chapter 4 (specifically front matter, 4.1, 4.2, 4.4) due Monday

Problem Set 5 (FAQ) due Friday

Problem Set 6 handed out

Feb 27

Slides
Chapter 4.5

Mar 01

Slides
Chapter 4.5-4.6

Week 8

Mar 04

Slides
Chapter 4.8

Professor Levy's example code

Greedy Algorithms: Data Compression - Huffman Codes

Divide and Conquer Algorithms: Recurrence relations, Counting inversions

K&T 5.1, 5.2, 5.3

Wiki due Monday (4.5-4.7)
Problem Set 6 due Friday
Problem Set 7 handed out

Mar 06

Slides
Chapter 5, 5.1

Mar 08

Slides
Chapter 5.1, 5.2-5.3

Week 9

Mar 11

Slides
Chapter 5.3-5.4

Divide and Conquer Algorithms: Counting Inversions, Closest pair of points, Integer multiplication, matrix multiplication
K&T: Chapter 5.1-5.4

Dynamic Programming: Memoization, Weighted Interval Scheduling
K & T: Chapter 6

Wiki due Monday (4.8, 5.1, 5.2, 5.3)

Problem Set 7 due, FAQ

Exam 2 handed out

Mar 13

Slides
Chapter 5.4, 5.5

Mar 15

Slides
Chapter 6, 6.1

Week 10

Mar 18

Exam 2 - Work period, due Friday at 5 p.m.

Mar 20

Slides
Chapter 6.1-6.3

Dynamic Programming: Weighted Interval Scheduling, Segmented Least Squares

Exam 2 FAQ

No wiki

Problem Set 8 handed out

Mar 22

Slides
Chapter 6-3-6.4

Week 11

Mar 25

Slides
Chapter 6.4, 6.6

Dynamic Programming: Knapsack, Shortest Path, Chapter 6

Network Flow: Maximum Flow, Minimum Cuts
Ford-Fulkerson Algorithm
Capacity Scaling
K&T: Chapter 7

Wiki Due Monday (6-6.4)
Problem Set 8 due

Problem Set 9 Handed out

Mar 27

Slides
Chapter 6.6, 6.7

Mar 29

Slides
Chapter 7.1-7.2

Week 12

Apr 01

Slides
Chapter 7.5, 7.7, 7.8

Network Flow Applications
NP and Computational Intractability
K & T: Chapter 7, 8

Writing a Network Flow Proof

Wiki Due Monday (7.1-7.2, 7.5, 7.7)

Problem Set 9 due
Python3 template file, Java template file
Data file and Expected Output files
To extract the data/output files in a Linux terminal:
tar xfz neruda.tgz

Fill out course evaluation

Final Exam handed out

Read The status of the P versus NP problem. For a gentler intro to The math problem that could change the world: Does P = NP?

Apr 03

Slides
Chapter 7.5, 7.7, 7.9

Apr 05

Slides
Chapter 8.1

Week  

Apr 08

Final Exam

Apr 10

Apr 12