Main navigation  Main content
Schedule
This is an approximate schedule. It will be updated as the class progresses.








1  Sept. 4 
Introduction and Insertion Sort 
Lec1 slides Lec2 slides 
Ch. 3.1 and 2.2 
Exercise 0: Due 9/6 

2  Sept. 11 
Merge Sort and Quicksort 
Lec3 slides Lec4 slides 
Ch. 2.3 and 7.2 
Prog. Assignment 1: Due 9/11 PA1.py Template Written Assignment 1: Due 9/13 Bubblesort Correctness Proof 

3  Sept. 18 
Heap Sort and Priority Queues 
Lec5 slides Lec6 slides 
Ch. 6.2 and 6.5 
Prog. Assignment 2: Due 9/18 PA2.py Template Written Assignment 2: Due 9/20 
Quiz 1: 9/18 Practice Solutions 
4  Sept. 25 
Counting Sort and Radix Sort 
Lec7 slides Lec8 slides 
Ch. 8.2 and 8.3 
Prog. Assignment 3: Due 9/25 PA3.py Template Written Assignment 3: Due 9/27 

5  Oct. 2 
Dynamic Prog. 
Lec9 slides Lec10 slides 
Ch. 15.1 and 15.3 
Prog. Assignment 4: Due 10/2 PA4.py Template Written Assignment 4: Due 10/4 
Quiz 2: 10/2 Practice Solutions 
6  Oct. 9 
Greedy Algorithms 
Lec11 slides Lec12 slides 
Ch. 16.2 and 16.3 
Prog. Assignment 5: Due 10/9 PA5.py Template Written Assignment 5: Due 10/11 

7  Oct. 16 
Breadth First Search 
Lec13 slides Lec14 slides 
Ch. 22.1 and 22.2 
Prog. Assignment 6: Due 10/16 PA6.py Template Written Assignment 6: Due 10/18 
Quiz 3: 10/16 Practice Solutions 
8  Oct. 23 
Depth First Search 
Lec15 slides Lec16 slides 
Ch. 22.3 and 22.4 
Prog. Assignment 7: Due 10/23 PA7.py Template Written Assignment 7: Due 10/25 

9  Oct. 30 
Minimum Spanning Trees 
Lec17 slides Lec18 slides 
Ch. 23.1 and 23.2 
Prog. Assignment 8: Due 10/30 PA8.py Template Written Assignment 8: Due 11/1 
Quiz 4: 10/30 Practice Solutions 
10  Nov. 6 
SingleSource Shortest Path 
Lec19 slides Lec20 slides 
Ch. 24.1 and 24.3 
Prog. Assignment 9: Due 11/6 PA9.py Template Written Assignment 9: Due 11/8 

11  Nov. 13 
AllPairs Shortest Path 
Lec21 slides Lec22 slides 
Ch. 25.1 and 25.3 
Prog. Assignment 10: Due 11/13 PA10.py Template Written Assignment 10: Due 11/15 
Quiz 5: 11/13 Practice Solutions 
12  Nov. 20 
Hash Tables 
Lec23 slides Lec23 slides (.txt) 
Ch. 11.2 
Prog. Assignment 11: Due 11/20 PA11.py Template 

13  Nov. 27 
Hash Tables and BSTs 
Lec24 slides Lec25 slides 
Ch. 11.4 and 12.2 
Written Assignment 11: Due 11/29 
Quiz 6: 11/27 Practice Solutions 
14  Dec. 4 
BSTs and RedBlack Trees 
Lec26 slides Lec27 slides 
Ch. 12.3 and 13.1 
Prog. Assignment 12: Due 12/4 PA12.py Template Written Assignment 12: Due 12/6 

15  Dec. 11 
Quiz 7 and Course Evals 
Lec28 slides 

Prog. Assignment 13: Due 12/11 PA13.py Template Written Assignment 13: Due 12/13 
Quiz 7: 12/11 Practice Solutions 
16  Dec. 18 
Finals Week 
No Final  