This is a tentative schedule of the lecture material and reading assignments. Reading assignments refer to sections or chapters in Arnold and Gosling (AG) or Standish (S).
| Lecture Date | Topic | Reading | Assignments |
| Lecture 1, Aug. 25 | Overview | AG 1 (skim) | |
| Lecture 2, Aug. 27 | Java Basics | AG 5 (skim) | |
| Lecture 3, Aug. 29 | Control | AG 6 | Lab 1 |
| No lecture, Sep. 1 | Holiday | ||
| Lecture 4, Sep. 3 | Classes & Objects | AG 2 | HW 1 due |
| Lecture 5, Sep. 5 | Extending Classes | AG 3 | Lab 2 |
| Lecture 6, Sep. 8 | Interfaces | AG 4 | |
| Lecture 7, Sep. 10 | Linked Structures | S 3 | HW 2 due |
| Lecture 8, Sep. 12 | Recursion | S 4 | Lab 3 |
| Lecture 9, Sep. 15 | Specifying ADTs | S 5 | |
| Lecture 10, Sep. 17 | Stacks and Queues | S 6 | HW 3 due |
| Lecture 11, Sep. 19 | Project Management | Lab 4 | |
| Lecture 12, Sep. 22 | Arrays | (more AG 5) | |
| Lecture 13, Sep. 24 | Lists | S 7 | PJ 1 due |
| Lecture 14, Sep. 26 | Strings | AG 8 | Lab 5 |
| Lecture 15, Sep. 29 | Dynamic Memory | ||
| Lecture 16, Oct. 1 | Midterm 1 | Covers L 1-14 | |
| Lecture 17, Oct. 3 | Packages | AG 10 | Lab 6 |
| Lecture 18, Oct. 6 | Big-O | ||
| Lecture 19, Oct. 8 | Trees | S 8.1-8.3 | HW 4 due |
| Lecture 20, Oct. 10 | Heaps | S 8.4-8.5 | Lab 7 |
| Lecture 21, Oct. 13 | Traversals | S 8.6 | |
| Lecture 22, Oct. 15 | Binary Search Trees | S 8.7 | HW 5 due |
| Lecture 23, Oct. 17 | Balanced Trees | S 8.9 | Lab 8 |
| Lecture 24, Oct. 20 | Tries | S 8.10-8.11 | |
| Lecture 25, Oct. 22 | Hash Tables | S 9.1-9.3 | PJ 2 due |
| Lecture 26, Oct. 24 | Hashing Pragmatics | S 9.4-9.7 | Lab 9 |
| Lecture 27, Oct. 27 | Sorting | S 10.1-10.4 | |
| Lecture 28, Oct. 29 | Sorting | S 10.5-10.6 | HW 7 due |
| Lecture 29. Oct. 31 | Sorting | S 10.7-10.8 | Lab 10 |
| Lecture 30, Nov. 3 | IO | ||
| Lecture 31, Nov. 5 | Midterm 2 | Covers L 1-28 | |
| Lecture 32, Nov. 7 | Exceptions | AG 7 | Lab 11 |
| Lecture 33, Nov. 10 | Exceptions | ||
| Lecture 34, Nov. 12 | Project Design | HW 8 due | |
| Lecture 35, Nov. 14 | Graphs | S 8.12-8.13 | Lab 12 |
| Lecture 36, Nov. 17 | Graphs | S 8.14-8.15 | |
| Lecture 37, Nov. 19 | C++ Intro | HW 9 due | |
| Lecture 38, Nov. 21 | More C++ | Lab 13 | |
| Lecture 39, Nov. 24 | Con/De-structors | ||
| Lecture 40, Nov. 26 | Inheritance | ||
| No lecture, Nov. 28 | Holiday | no lab | |
| Lecture 41, Dec. 4 | Templates | ||
| Lecture 42, Dec. 6 | Memory Management | Handout | PJ 3 due |
| Lecture 43, Dec. 8 | Review | no lab |