No lecture on Monday, Oct. 8, 2007.
No lecture on Monday, Nov. 12, 2007.
No lecture on Wednesday, Nov. 21, 2007.
No lecture on Friday, Nov. 23, 2007.
| Date | Topic/Reading | Lectures and Examples | Discussions |
| Wed, Sept. 5 | Introduction | Prerequisite Test and Solution | -- |
| Fri, Sept. 7 | Java Basics | -- | |
| Mon, Sept. 10 | Java Methods and Classes (2.1--2.10) | -- | |
| Wed, Sept. 12 | Class Inheritance and Polymorphism (2.11--2.15) | -- | |
| Fri, Sept. 14 | Static and Dynamic Collections (3.4, 2.12) | -- | |
| Mon, Sept. 17 | Static and Dynamic Collections (continued) | -- | |
| Wed, Sept. 19 | Dynamic Collections and Java Interfaces | -- | |
| Fri, Sept. 21 | Analysis of Algorithms (1.6) | -- | |
| Mon, Sept. 24 | Analysis of Algorithms (continued) | -- | |
| Wed, Sept. 26 | Stacks (Ch. 6) | -- | |
| Fri, Sept. 28 | Stacks (continued) | -- | |
| Mon, Oct. 1 | Applications of Stacks, Queues (Ch. 7) | -- | |
| Wed, Oct. 3 | Queues and VLSI routing | -- | |
| Fri, Oct. 5 | Searching Ordered Lists (11.1) | -- | |
| Wed, Oct. 10 | Recursion and Recurrence Relations | -- | |
| Fri, Oct. 12 | Recursion and Sorting (11.2) | -- | |
| Mon, Oct. 15 | Insertion and Selection Sort (11.2) | -- | |
| Wed, Oct. 17 | Recurrences and Quicksort (11.2) | -- | |
| Fri, Oct. 19 | Quick Sort and Merge Sort | -- | |
| Mon, Oct. 22 | Midterm Review | -- | -- |
| Wed, Oct. 24 | Midterm Recap | -- | -- |
| Fri, Oct. 26 | Binary Search Trees (13.1--13.3) | -- | |
| Mon, Oct. 29 | Binary Search Trees (13.1--13.3) | -- | |
| Wed, Oct. 31 | Deletion in Binary Search Trees | -- | |
| Fri, Nov. 2 | Tree Traversals (12.3) | -- | |
| Mon, Nov. 5 | Balancing Binary Search Trees | -- | -- |
| Wed, Nov. 7 | Balanced Trees and Tree Rotations (13.4, 13.5) | -- | |
| Fri, Nov. 9 | Introduction to Heaps (Ch. 15) | -- | |
| Wed, Nov. 14 | More Heaps | -- | |
| Fri, Nov. 16 | Hashing (17.1--17.3) | -- | |
| Mon, Nov. 19 | Hashing and Collisions (17.1--17.3) | -- | |
| Mon, Nov. 26 | Introduction to Graph Theory (Ch. 18) | -- | |
| Wed, Nov. 28 | Data Structures for Storing Graphs | -- | |
| Fri, Nov. 30 | Shortest Paths, Spanning Trees and BFS (Ch. 18) | -- | |
| Mon, Dec. 3 | Breadth-First and Depth-First Search
|
-- | |
| Wed, Dec. 5 | Prim's Minimum Spanning Tree Algorithm |
|
-- |
| Fri, Dec. 7 | Dijkstra's Shortest Path Algorithm |
|
-- |
| Mon, Dec. 10 | Public-Key Cryptography | -- | |
| Wed, Dec. 12 | Review | -- | -- |
| Fri, Dec. 14 | Review | -- | -- |