| Date | Topic | Reading | Lecture Notes | Lab (if any) | 
| Monday, Aug. 23 | Syllabus, intro to C++ | Transition guide, sections 1-3 | Lecture 1 |  | 
| Wednesday, Aug. 25 | Intro to C++ | Transition guide, sections 3-4 | Lecture 2 |  | 
| Friday, Aug. 27 | Intro to C++ | Transition guide, sections 4-6 | Lecture 3 |  | 
| Monday, Aug. 30 | Intro to C++ | Transition guide | Lecture 4 |  | 
| Wednesday, Sept. 1 | Intro to C++ | Transition guide | Lecture 5 |  | 
| Thursday, Sept 2 | Makefiles Running time analysis
 | Chapter 2-3 of text | Lecture 6 |  | 
| Friday, Sept 3 | Lab day |  |  | Lab 2 | 
| Monday, Sept 6 | No class Labor Day
 |  |  |  | 
| Wednesday, Sept 8 | Big-O | Chapter 3 of text | Lecture 7 |  | 
| Thursday, Sept 9 | Lab day |  |  | Lab 3 | 
| Friday, Sept 10 | Stacks | Chapter 4.2 | Lecture 8 Stack code
 |  | 
| Monday, Sept 13 | Stacks | Chapter 4.2 | Lecture 9 Stack code
 |  | 
| Wednesday, Sept 15 | Queues | Chapter 4.3 | Lecture 10 Queue code
 |  | 
| Thursday, Sept 16 | Using Stacks |  |  | Lab 4 | 
| Friday, Sept 17 | Linked Stacks | Chapter 4.4 | Lecture 10 Linked Stack code
 |  | 
| Monday, Sept 20 | Linked Stacks and queues | Chapter 4.4 | Linked Stack code |  | 
| Wednesday, Sept 22 | Linked Stacks | Chapter 4.4 | Lecture 12 Linked Queue code
 |  | 
| Thursday, Sept 23 | Review for Exam 1 |  |  |  | 
| Friday, Sept 24 | Exam 1 |  |  |  | 
| Monday, Sept 27 | Linked Queues Vectors
 | Chapter 4.4 | Lecture 13 Linked Queue code
 |  | 
| Wednesday, Sept 29 | Vector code | Chapter 5.1 | Lecture 14 Vector.h
 |  | 
| Friday, Oct. 1 | Lists Iterators
 | Chapter 5.2, 5.6 | Lecture 15 |  | 
| Monday, Oct. 4 | Lists | Chapter 5.2 | Lecture 16 List.h
 |  | 
| Wednesday, Oct. 6 | Lists | Chapter 5.2 | List.h testList.cpp
 |  | 
| Friday, Oct. 8 | Sorting | Chapter 10 | Lecture 17 |  | 
| Monday, Oct. 11 | Trees | Chapter 6.1-6.2 | Lecture 18 |  | 
| Wednesday, Oct. 13 | Heaps | Chapter 7 | Lecture 19 |  | 
| Friday, Oct. 15 | Heaps | Chapter 7 | Lecture 20 Heap.h
 |  | 
| Wednesday, Oct. 20 | Binary Trees | Chapter 6 | Lecture 21 |  | 
| Friday, Oct. 22 | Binary Trees | Chapter 7 | BinaryTree.h |  | 
| Monday, Oct. 25 | Binary Trees | Chapter 7 | BinaryTree.h |  | 
| Wednesday, Oct. 27 | Binary Trees Binary Search Trees
 | Chapter 9.1 | Lecture 22 BinaryTree.h
 |  | 
| Friday, Oct. 29 | Binary Search Trees | Chapter 9.1 | BinarySearchTree.h |  | 
| Wednesday, Nov. 3 | Binary Search Trees | Chapter 9.1 | BinarySearchTree.h |  | 
| Friday, Nov. 5 | AVL Trees | Chapter 9.2 | Lecture 23 |  | 
| Monday, Nov. 8 | Review Session |  |  |  | 
| Wednesday, Nov. 10 | Exam II |  |  |  | 
| Thursday, Nov. 11 | AVL Trees | Chapter 9.2 | Lecture 24 |  | 
| Friday, Nov. 12 | AVL Trees | Chapter 9.2 | AVLTree.h |  | 
| Monday, Nov. 15 | Pivot in Binary Trees |  | BinaryTree.h |  | 
| Wednesday, Nov. 17 | Rotate in AVL Trees |  | AVLTree.h |  | 
| Thursday, Nov. 18 | Intro to Huffman codes |  |  |  | 
| Friday, Nov. 19 | In class work day |  | AVLTree.h |  | 
| Monday, Nov. 22 | Huffman codes |  | Lecture 26 |  | 
| Monday, Nov. 29 | Hashing part 1 | Chapter 8.2 | Lecture 27 |  | 
| Wednesday, Dec. 1 | Hashing part 2 | Chapter 8.2 | Lecture 28 |  | 
| Thursday, Dec. 2 | Hashing part 3 | Chapter 8.2 | Lecture 29 |  | 
| Friday, Dec. 3 | Graphs: BFS and DFS | Chapter 12 | Lecture 30 |  | 
| Monday, Dec. 6 | Graphs: Shortest Paths | Chapter 12 | Lecture 31 |  |