| Date |
Subject |
Assignment |
| Week 1 |
|
Mon, Jul. 06
|
Course Intro; C++ review
|
'Assignment 0' — General notes on all assignments
|
|
Tue, Jul. 07
|
Asymptotic and Amortized analysis; vectors
|
Assignment 1 — Ordered Arrays
|
|
Wed, Jul. 08
|
Linked lists and other seq. structures
|
|
|
Thu, Jul. 09
|
Doubly-linked lists; Stacks and Queues;
|
|
| Week 2 |
|
Mon, Jul. 13
|
Midterm 1 Review
|
Assignment 2 — Doubly-linked lists
|
|
Tue, Jul. 14
|
Midterm 1
|
|
|
Wed, Jul. 15
|
Recursion
|
Midterm 1 Practice Test (Solutions)
|
|
Thu, Jul. 16
|
Quadratic sorting
|
|
| Week 3 |
|
Mon, Jul. 20
|
Sub-quadratic sorting
|
|
|
Tue, Jul. 21
|
Binary search trees
|
|
|
Wed, Jul. 22
|
More search trees
|
|
|
Thu, Jul. 23
|
Splay trees
|
Assignment 3 — Mergesort on linked lists
|
| Week 4 |
|
Mon, Jul. 27
|
Midterm 2
|
|
|
Tue, Jul. 28
|
Hashing and hash tables
|
|
|
Wed, Jul. 29
|
More trees: binary heaps and disjoint sets
|
Assignment 4 — AVL trees Midterm 2 Practice Test (Solutions)
|
|
Thu, Jul. 30
|
Midterm 3 review
|
|
| Week 5 |
|
Mon, Aug. 03
|
Midterm 3
|
Assignment 5 — Testing hash functions
|
|
Tue, Aug. 04
|
Graphs
|
Assignment 6 — Disjoint Sets Midterm 3/4 Practice Test (Solutions)
|
|
Wed, Aug. 05
|
Weighted graph algorithms Midterm 4 review
|
|
|
Thu, Aug. 06
|
Midterm 4
|
|