| Date | Topics | Reading | Homework |
| 6/18 |
Welcome, introduction, what to expect from the course, getting started Lecture-1 slides Concept map |
Savitch 4.1 | |
| 6/19 | LAB 1 | ||
| 6/20 | Encapsulation; Abstract data types; Overloading | Savitch 4.2, 4.3 | HW1 assigned |
| 6/25 |
Constructors; References and class parameters Lecture-3 slides |
Savitch 4.4, 5.1-5.2; Ermann 9 | |
| 6/26 | LAB 2 | ||
| 6/27 |
References continued, Inheritance Lecture3-4 slides |
Savitch 5.3-5.4, 7.1-7.3 | HW1 due; HW2 assigned. |
| 7/2 |
Inheritance continued, Exam review Lecture-5 slides |
Savitch 7.1-7.3; Ermann 16 | |
| 7/3 | LAB 3 | HW2 due; HW3 assigned. | |
| 7/4 | 4th of July holiday | ||
| 7/9 | Mid-term exam 1 | ||
| 7/10 | LAB 4 | ||
| 7/11 | Exceptions | Savitch 9.1-9.3 | HW3 due; HW4 assigned |
| 7/16 |
Recursion Lecture-7-8 slides |
Savitch 11.1, 11.2; Ermann 11 | |
| 7/17 | LAB 5 | ||
| 7/18 | Recursion continued; Introduction to searching | Savitch 11.3 | HW4 due; HW5 assigned |
| 7/23 |
Interfaces; ArrayList Lecture 9 slides (Exceptions) Lecture 10 slides |
Savitch 13.1-13.3; 14.1 | |
| 7/24 | LAB 6 | ||
| 7/25 | Collections; Generics; Exam review | Savitch 14.2; 16.1-16.2 | HW5 due |
| 7/30 | Mid-term exam 2 | ||
| 7/31 | LAB 7 | HW6 assigned | |
| 8/1 |
Data structures; Stacks and queues Lecture 11 slides |
Savitch 15.1-15.4; Ermann 19 |
|
| 8/6 |
Introduction to algorithm analysis Lecture 12 slides |
Savitch 15 (pages 851-856) | |
| 8/7 | LAB 8 | ||
| 8/8 |
Introduction to sorting, trees Lecture 13 slides (sorting) Lecture 14 slides (trees) |
Savitch 12.2 | HW6 due (midnight) |
| 8/13 | Wrap-up and exam review | ||
| 8/14 | LAB 9 | ||
| 8/15 | Final exam during class hours |