| Week | Date | Lectures | Code Examples | Assignments | |
| 1 | Aug. 28 | Course Overview | Submission Setup | ||
| Aug. 30 | Introduction
Review of Classes (pdf) |
Constructor Overloading Scoping Static |
hw 0 - Warm-up | ||
| Sep. 01 | Review of Classes and Objects |
Generic Class Singleton Pattern |
|||
| 2 | Sep. 04 | Labor Day | |||
| Sep. 06 | Arrays (pdf) Review of arrays Copying arrays |
Dynamic Array Array of Primitives Array of Objects |
hw 1 - Number Systems | ||
| Sep. 08 | 2D Arrays Array-based collections |
2D Array Cloning DynamicArray4 |
Quiz 1 | ||
| 3 | Sep. 11 |
Collections (pdf) Strings, StringBuffer | Reverse a String |||
| Sep. 13 | Hashtable and hashCode |
HashCode Maps and Sets |
hw 2 - Card Game | ||
| Sep. 15 | I/O Framework (pdf)
Read and Write Exceptions |
Read Read and Write Close Words |
|||
| 4 | Sep. 18 | Stacks (pdf) Array Based Implementation OOP: Interfaces |
ArrayStack | ||
| Sep. 20 | OOP: Inheritance Applications of Stacks |
Shapes StackByInheritance |
hw 3 - Word Search | ||
| Sep. 22 | Circular Queue (pdf)
Array Based Implementation |
Circular Queue | Quiz 2 | ||
| 5 | Sep. 25 | Computational Complexity (pdf) | |||
| Sep. 27 |
Quadratic Sorting (pdf) Insertion sort Selection sort |
hw 4 - Word Ladder | |||
| Sep. 29 | Mergesort (pdf) Divide-and-Conquer |
||||
| 6 | Oct. 02 | More on Sorting (pdf) Comparable Comparator/td> | SortDemo | ||
| Oct. 04 | Linked Lists Traversal Insertion |
LinkedList Class | hw 5 - Polynomials | ||
| Oct. 06 | Deletion Cloning |
CloneDemo | |||
| 7 | Oct. 09 | Recursive
Programming
Linked Lists |
Quiz 3 | ||
| Oct. 11 | Recursive Problem Solving | LinkedList Recursively | |||
| Oct. 13 | Exam |
||||
| 8 | Oct. 16 | Graphical User Interfaces Introduction |
Rainbow GeomDrawing |
||
| Oct. 18 | GUI: Designing a layout |
FrameDemo FrameDemo2 PanelDemo |
hw 6 - Helicopter | ||
| Oct. 20 | Mid-Semester Break | ||||
| 9 | Oct. 23 | GUI: Event Handling |
Flying Balloon 1 Flying Balloon 2 Happy Face(zip) |
||
| Oct. 25 | More on Event Handling | Flying Balloon 3 | |||
| Oct. 27 | Threads | SimpleThread Clock |
|||
| 10 | Oct. 30 | Trees (pdf) Introduction |
|||
| Nov. 01 | Binary Trees Traversals |
hw 7 - Anagrams | |||
| Nov. 03 | Expression Trees Tree Iterator |
Binary Tree | Quiz 4 | ||
| 11 | Nov. 06 | Binary Search Trees Searching Insertion |
|||
| Nov. 08 | Deletion from a BST | BST class | |||
| Nov. 10 | Complexities of BST Operations |
||||
| 12 | Nov. 13 | PQ and Heaps | Quiz 5 | ||
| Nov. 15 | Balanced Trees | ||||
| Nov. 17 | Prog. Exam on Nov. 16 Written Exam on Nov. 17 |
||||
| 13 | Nov. 20 | Sudoku | hw 8 - Sudoku | ||
| Nov. 22 | Thanksgiving Break | ||||
| Nov. 24 | Thanksgiving Break | ||||
| 14 | Nov. 27 | Graphs Terminology Representations |
Matrix Class Graph Class |
||
| Nov. 29 | Graph Traversals | ||||
| Dec. 01 | Cycles in Graphs | Quiz 6 | |||
| 15 | Dec. 04 | Review: Collection classes | |||
| Dec. 06 | Review: Collection classes | ||||
| Dec. 08 | Course wrap-up | ||||