| Aug. 26 | Introduction, Java Review |
| 27 | No class |
| 28 | Java Review |
| 31 | ADTs, ArrayList |
| Sept. 2 | Implementing ArrayList |
| 3 | No class |
| 4 | Recursive Procedures (HW1 Due) |
| 7 | No class (Labor Day) |
| 9 | Recursive Data (Quiz 1) |
| 10 | No class |
| 11 | Implementing LinkedList (HW2 Due) |
| 14 | LinkedList vs. ArrayList, Iterators |
| 16 | foreach, Loop invariants |
| 17 | No class |
| 18 | Loop and data invariants (HW3 Due) |
| 21 | Review |
| 23 | Exam 1 |
| 24 | No class |
| 25 | Exam answers, big-O notation (HW4 Due) |
| 28 | big-O |
| 30 | Sorting |
| Oct. 1 | No class |
| 2 | No class (HW5 Due) |
| 5 | QuickSort |
| 7 | Tree Introduction (Quiz 2) |
| 8 | Trees |
| 9 | Expression Trees (HW6 Due) |
| 12 | Binary Search Trees |
| 14 | Red-black Trees |
| 15-16 | No class (Fall break) |
| 19 | Red-black Trees, lookup table |
| 21 | Map ADT (Quiz 3) |
| 22 | No class |
| 23 | HashMap (HW7 Due) |
| 26 | HashMap, hash codes |
| 28 | Stack |
| 29 | No class |
| 30 | Basic Swing, Custom JComponent (HW8 Due) |
| Nov. 2 | Swing |
| 4 | Exam 2 |
| 5 | No class |
| 6 | ButtonGroup, JTabbedPane, JSplitPane (HW9 Due) |
| 9 | No class |
| 11 | Recursion to stacks (Project Ideas Due) |
| 12 | No class |
| 13 | Queues |
| 16 | Priority Queues |
| 18 | (Project Design Due, Quiz 4) |
| 19 | No class |
| 20 | (HW10 Due) |
| 23 | |
| 25-27 | No class (Thanksgiving) |
| 30 | (Project Progress Report) |
| Dec. 2 | |
| 3 | |
| 4 | |
| 7 | |
| 8 | (Final Project Presentation) |
| 16 | Final |