Schedule

The schedule below shows the tentative dates for all class topics, readings, and major assignments (MPs and SoLAs). You should complete all assigned readings by 10 p.m. on the night before the class in which they are listed. You should complete all lab writeups before the next class session. You can find the full list of due dates on Gradescope.

Due dates for major assignments will not change. However, the particular topics we cover each day may change as we discover that we need more (or less) time on each topic.

If the title of a class session is blue, you should be able to click on it to view the eboard for that class session.

If you view this page with JavaScript enabled you can jump to the current week on the schedule, and you should see the next day of class highlighted in the schedule below.

Week 1 : Preliminaries
W
Jan 21
class 1

Class 01

 
 
 

F
Jan 23
class 2

Class 02

 
 
 
Week 2 : Complexity
M
Jan 26
class 3

Class 03

 
 
 

W
Jan 28
class 4

Class 04

 
 
 

F
Jan 30
class 5

Class 05

 
 
 
Week 3 : Sorting and Divide & Conquer
M
Feb 2
class 6

Class 06

 
 
 

W
Feb 4
class 7

Class 07

 
 
 

F
Feb 6
class 8

Class 08

 
 
 
Week 4 : Invariants and Induction
Su
Feb 1
class 9

Class 09

 
 
 

W
Feb 11
class 10

Class 10

 
 
 

F
Feb 13
class 11

Class 11

 
 
 
Week 5 : Analyzing Recursive Algorithms
M
Feb 16
class 12

Class 12

 
 
 

W
Feb 18
class 13

Class 13

 
 
 

F
Feb 20
class 14

Class 14

 
 
 
Week 6 : Graphs, DFS, and BFS
M
Feb 23
class 15

Class 15

 
 
 

W
Feb 25
class 16

Class 16

 
 
 

F
Feb 27
class 17

Class 17

 
 
 
Week 7 : DFS & BFS, Continued
M
Mar 2
class 18

Class 18

 
 
 

W
Mar 4
class 19

Class 19

 
 
 

F
Mar 6
class 20

Class 20

 
 
Assigned
  • Problem Set 3
Spring Break
Week 8 : Shortest-Paths (Dijkstra's and Bellman-Ford)
M
Mar 23
class 21
 
 
Assigned
  • Assessment 2

W
Mar 25
class 22

F
Mar 27
class 23
Readings
  • CLRS 604–611 (Shortest Path)
  • CLRS 620–624 (Dijkstra’s)
Due
  • Problem Set 3
 
Week 9 : Greed and Minimum Spanning Trees
M
Mar 30
class 24
Reading
  • CLRS 22.1 (Bellman-Ford)
Due
  • Project 1 First Resubmission
  • Problem Set 1 First Resubmission
  • Assessment 1 First Resubmission
  • Project 2 First Resubmission
  • Problem Set 2 First Resubmission
 

W
Apr 1
class 25
 
Due
  • Assessment 2
Assigned
  • Problem Set 4

F
Apr 3
class 26
Reading
  • CLRS pp. 417–424, 426–427 (Greed)
 
 
Week 10 : More Greed
M
Apr 6
class 27
Reading
  • CLRS 21 (MSTs)
Due
  • Project 3
Assigned
  • Project 4

W
Apr 8
class 28

F
Apr 10
class 29
Reading
  • CLRS 25.2 (The stable-marriage problem)
 
 
Week 11 : Miscellaneous Topics
M
Apr 13
class 30
 
Due
  • Assessment 2 First Resubmission
  • Problem Set 3 First Resubmission
Assigned
  • Assessment 3

W
Apr 15
class 31
Readings
  • CLRS 8.3 (Radix Sort)
  • CLRS 8.4 (Bucket Sort)
 
 

F
Apr 17
class 32
 
Due
  • Problem Set 4
  • Project 4
 
Week 12 : Dynamic Programming

W
Apr 22
class 34
 
Due
  • Assessment 3
Assigned
  • Problem Set 5

F
Apr 24
class 35
Week 13 : Dynamic Programming, Continued
M
Apr 27
class 36

W
Apr 29
class 37

Balanced search trees 1

 
 
 

F
May 1
class 38

Balanced search trees 2

 
Due
  • Problem Set 5 (early)
  • Project 5 (early)
Assigned
  • Assessment 4
Week 14 : Wrapping Up
M
May 4
class 39

Ethics

 
 
 

W
May 6
class 40

Pause for breath

 
 
 

F
May 8
class 41

Wrapup

 
Due
  • Problem Set 5
  • Project 5
  • Assessment 4
 
Finals Week
F
May 15
class 42

All Work Due

 
Due
  • All remaining resubmissions (at 5:00 p.m.)
 
Summer