Note: Quizzes and Tests listed on Wednesdays may instead be offered in part or in full in the next day's recitation.
| Day | Date | Comments | Topics | Handouts |
| Week 1: Introduction + Review (Ch 1-3) | ||||
| Mon | 15-Jan | Welcome! | Ch1: Introduction Installing Java and Eclipse |
notes (doc,
html) hw1 (doc, html) |
| Wed | 17-Jan | hw1 due | Ch2: Program Fundamentals App A.1: Integer Binary Representation App B.1: Operator Precedence Table |
notes (doc,
html) hw2.1 (doc, html) |
| Fri | 19-Jan | --- | Ch3: Statements + Control Flow App B.2: Standard Java Math Functions |
notes (doc,
html) hw2.2 (doc, html) hw2.ec (doc, html) |
| Week 2: Review (Ch 4-5) + 2d Arrays | ||||
| Mon | 22-Jan | hw2 due | Ch4: Methods + Recursion + Overloading Ch5: Arrays and Containers |
notes (doc,
html) hw3.1 (doc, html) quiz1-practice (doc, html) hw2.1 solutions (doc, html) hw2.2 solutions (doc, html) |
| Wed | 24-Jan | String, StringBuffer, StringBuilder Arrays of Objects ArrayList<Object> and ArrayList<String> |
notes (doc,
html) |
|
| Thu | 25-Jan | quiz1 (to 19-Jan) |
Recitation lecture: 2d Arrays Example: Word Search |
WordSearch.java WordSearchInput.txt |
| Fri | 26-Jan | hw 3.1 due | Quiz 1 Solutions Word Search Redux App A.3: Manipulating Bits Pixel Graphics (briefly) |
notes (doc,
html) quiz1 solutions (doc, html) hw3.2 (doc, html) hw3.ec (doc, html) BitQuiz.java PixelImages.java sampleImage.jpg hw3.1 solutions (doc, html) |
| Week 3: Objects (Ch 6) + 2d Arrays + 2d Graphics | ||||
| Mon | 29-Jan | hw3.2 due | Ch6: Objects / Data Abstraction (through 6.10) Style: On "Magic Numbers" More Pixel Graphics (makeThumbnail()) |
notes (doc,
html) hw4.1 (doc, html) quiz2-practice (doc, html) hw3.2 solutions (doc, html) |
| Wed | 31-Jan | quiz2 (to 26-Jan) |
2d Matrices and Gaussian Elimination Quiz 2 |
notes (doc,
html) GaussianElimination.java hw4.2 (doc, html) |
| Thu | 01-Feb | Recitation lecture: 2d Graphics and Event-Based Programming |
||
| Fri | 02-Feb | hw 4.1 due quiz1 retake |
More on SampleGUI.java Quiz 1 Retake |
notes (doc,
html) BasicGUI.java SampleGUI.java |
| Week 4: More 2d Graphics | ||||
| Mon | 05-Feb | Review Event-Based Programming (SampleGUI.java) How to Write Tetris (1 of 3) |
||
| Wed | 07-Feb | How to Write Tetris (2 of 3) | hw 5: Tetris (doc, html) |
|
| Thu | 08-Feb | hw 4.2 due |
Recitation lecture: Return + Review Quiz 1 Retake and Quiz 2 |
|
| Fri | 09-Feb | How to Write Tetris (3 of 3) | hw 4 solutions (doc, html) | |
| Week 5: Style + Classes, Objects, and Inheritance (Ch 6-7) | ||||
| Mon | 12-Feb | Style 101 | Style Guide (doc,
html) Midi.java and midi files: route66.mid brandenburg6.mid entertainer.mid sabre.mid |
|
| Wed | 14-Feb | hw 5 due | More on Classes (rest of Ch 6) | notes (doc, html) |
| Thu | 15-Feb | quiz3 (to 12-Feb) |
Recitation: | |
| Fri | 16-Feb | Inheritance (Ch 7) (1 of 2) | notes (doc,
html) quiz3 solutions (doc, html) hw6.bonus (doc, html) (Flags & Text Adventure) |
|
| Week 6: Inheritance + Test 1 | ||||
| Mon | 19-Feb | Inheritance (2 of 2) Bonus Lecture (5-6pm): How to Write a (Very Simple) Text Adventure |
notes (doc, html) | |
| Wed | 21-Feb | test1 (to 14-Feb) |
Test 1 | |
| Thu | 22-Feb | Recitation (Review Test 1 Solutions) | ||
| Fri | 23-Feb | No Class (Class Canceled) | ||
| Week 7: Searching and Sorting (1 of 2) | ||||
| Mon | 26-Feb | Linear Search and Binary Search Best-Case, Average-Case, Worst-Case Analysis |
||
| Wed | 28-Feb | Quadratic Sorts (Insertion, Selection, Bubble) Comparable + Comparator Arrays.sort and Collections.sort |
notes (doc,
html) hw6 (doc, html) |
|
| Thu | 01-Mar |
Recitation: Interfaces + Comparable + Comparator |
notes (doc, html) | |
| Fri | 02-Mar |
ArrayList.toArray and ArrayList.toArray(T[]) |
notes (doc, html) | |
| Week 8: Searching and Sorting (2 of 2) | ||||
| Mon | 05-Mar | Packages Complexity + Big-Oh Notation Quicksort |
notes (doc, html) | |
| Wed | 07-Mar | hw6 due | Radixsort | |
| Thu | 08-Mar | quiz4 (to 02-Mar) |
Recitation | |
| Fri | 09-Mar |
No Class (Mid-Semester Break) |
||
| Week 9: No Classes (Spring Break) | ||||
| M-F | 12-Mar to 16-Mar |
No Class (Spring Break) | ||
| Week 10: Linked Lists (Association Lists, Doubly-Linked Lists, Circular Lists) + Iterators | ||||
| Mon | 19-Mar | Sorting Redux / Quiz Review | Sorts.java | |
| Wed | 21-Mar | Linked Lists (1 of 2) | notes (doc, html) | |
| Thu | 22-Mar | quiz5 (to 07-Mar) |
Recitation | |
| Fri | 23-Mar |
Linked Lists (2 of 2) |
notes (doc,
html) hw7 (doc, html) |
|
| Week 11: Stacks, Queues, Collections | ||||
| Mon | 26-Mar | Stacks & Queues (1 of 2) | notes (doc, html) | |
| Wed | 28-Mar | Stacks & Queues (2 of 2) | notes (doc, html) | |
| Fri | 30-Mar |
Java Collections Framework |
notes (doc, html) | |
| Week 12: Trees (BST's, Expression Trees, Traversals) | ||||
| Mon | 02-Apr | hw7 due | Trees (1 of 2) | notes (doc, html) |
| Wed | 04-Apr | quiz6 (to 30-Mar) |
Quiz 6 part 1 | |
| Thu | 05-Apr | quiz6 (part 2) |
Quiz 6 part 2 | hw 8: Boggle (doc, html) |
| Fri | 06-Apr |
Trees (2 of 2) |
notes (doc, html) | |
| Week 13: Heaps + Hashing | ||||
| Mon | 09-Apr | Heaps | notes (doc, html) | |
| Wed | 11-Apr | quiz7 (to 06-Apr) |
Priority Queues and Heapsort | notes (doc, html) |
| Fri | 13-Apr |
Applications of Heaps and Hashing |
notes (doc, html) | |
| Week 14: Test 2 | ||||
| Mon | 16-Apr | Test Review | ||
| Wed | 18-Apr | test2 (to 13-Apr) |
Test 2 | |
| Fri | 20-Apr |
No Class (Spring Carnival) |
||
| Week 15: Search -- One-Player and Two-Player Games | ||||
| Mon | 23-Apr | Review: Hash tables, Heaps, hw 8 (Prefix Dictionaries) State Space Search: Depth-First, Breadth-First, Best-First Discuss: End-of-Semester Topics |
notes (doc, html) | |
| Wed | 25-Apr | hw8 due | Minimax Search (1 of 3) Connect Four Othello |
notes (doc,
html) hw9: Othello (Reversi) (doc, html) |
| Fri | 27-Apr |
Minimax Search (2 of 3) |
notes (doc, html) | |
| Week 16: More One-Player and Two-Player Games | ||||
| Mon | 30-Apr | Minimax Search (3 of 3) | notes (doc, html) | |
| Wed | 02-May | Recursion, Backtracking, and Depth-First Search Towers of Hanoi 8 Queens Knights Tour Making a Maze / Solving a Maze |
notes (doc, html) | |
| Fri | 04-May | hw9 due quiz8 (to 02-May) |
Quiz8 |
notes (doc,
html) final exam notes (doc, html) |
| End of Semester | ||||
![]()