Calendar

Introduction to Algorithms and Fundamentals Review

13 Jan
Course Introduction [H0-1] [notes]
15 Jan
Induction [H0-2] [notes]
MMF Ch.11
QuizPrerequisite-Assessment (20 minutes)
20 Jan
Runtime Analysis [H0-3] [notes]
MMF Ch.14, JE Ch.0
22 Jan
Correctness of Algorithms [notes]
MMF Ch.15, CLRS Ch.2
HW 0 due

Recursion

27 Jan
Recurrence Relations [H0-4]
JE Append. II
29 Jan
Recursion [notes]
JE Ch.1
Quiz 1 (10-15 minutes, rescheduled from Tuesday)
HW 1 due
3 Feb
Recursion Invariants [H0-5][notes]
5 Feb
Master Method [HO-6][notes]
10 Feb
QuickSort [notes]
Quiz 2 (10-15 minutes)
12 Feb
QuickSelect [notes]
HW 2 due

Backtracking & Dynamic Programming

17 Feb
Termination and Decrementing Functions [HO-7][notes]
19 Feb
Exam 1
24 Feb
Backtracking and Game Trees [notes]
JE Ch.2
Quiz
26 Feb
Optimal Binary Search [notes]
HW 3 due
3 Mar
Dynamic Programming [HO-8][notes]
JE Ch.3
5 Mar
Analyzing Algorithms, Closest Pair [HO-9][notes]
CLRS 33.4, MIT notes
10 Mar
Recap (Ch 3, Prob. 19; closest pair), Loop Invariants [notes]
Quiz
12 Mar
Topological Sort [HO-10][notes]
JE Ch.5
HW 4 due
17 Mar
Spring Break
19 Mar
Spring Break

Greedy Algorithms

24 March
Dutch National Flag Loop Invariant [notes]
DNF Wiki, Cornell Notes
26 March
Greedy Algorithms [H0-11][notes]
JE Ch.4, Gas Fueling Problem

Advanced Graph Algorithms

31 March
Shortest Paths [H0-12][notes]
JE Ch.6
Quiz
2 April
Interpolated SPs [H0-13][notes]
HW 5 due
7 April
Minimum Spanning Trees [notes]
JE Ch.7
9 April
Exam 2 (focus on DP & Greedy Algorithms)
14 April
Dynamic Shortest Paths [notes]
Quiz
16 April
More Graph Algorithms [notes]
HW 6 due
21 April
Project Presentations
23 April
Project Presentations
28 April
Project Presentations
30 April
Project Presentations