You MUST also read code that defines the Point and Rectangle classes.
Course staff office hours and emails:
Labs (in HU-25) (attend any, even > 1 as long as there's room for official registrants)
What will happen in lectures:
| Day | Readings/Assignments/Topics | Resources |
| Labs | no labs first week; optional orientation Fri, 1/20 1:00PM-5:00PM in HU-25 | |
| C01 Thu Jan 19 |
|
|
| Day | Readings/Assignments/Topics | Resources |
| Labs | Lab Assignment
Get the java-sources for GE Data Structures, to replace your copy of book-classes from 201 Make sure you can run DrJava with the Data Structures version Picture class in Lab Make sure you can copy, compile, and demontrate the OneCollageMaker program. Begin to develop it into the TwoCollageMaker application; finish and submit on Blackboard by Sun. night. |
OneCollageMaker.java
Tip: Use tiny images like the above two so that your answer Picture is small enough to fit entirely in your computer screen. |
| C02 Tue Jan 24 |
|
|
| C03 Thu Jan 26 |
|
|
| Day | Readings/Assignments/Topics | Resources |
| Labs |
|
|
| C04 Tue Jan 31 |
|
Small images of numbers good for debugging Proj 1 |
| C05 Thu Feb 2 |
| Day | Readings/Assignments/Topics: | Resources |
| Labs | ||
| C06 Tue Feb 7 | Lect06 Live coding directory used in lecture. Resources for Proj 2, 3 and 4 |
|
| Wed Feb 8 | Programming Project 1 DUE Wed, Feb. 8 |
|
| C07 Thu Feb 9 |
|
Live coding directory used in lecture. |
| Day | Readings/Assignments/Topics | Resources |
| C08 Tue Feb 14 |
|
|
| Labs | ||
| C09 Thu Feb 16 | ||
| Sun Feb 19 | Projects 2 and 3 DUE. |
| Day | Readings/Assignments/Topics | Resources |
| C10 Tue Feb 21 |
|
Directory used in Lecture--with demonstration completed (after class) |
| Labs | Lab 05-06 Make your own Facebook. | The Social Network movie |
| C11 Thu Feb 23 |
|
|
| Sun Feb 26 | Project 4 DUE (cut middle, cut end, paste end with a linked list). |
| Day | Readings/Assignments/Topics | Resources |
| C12 Tue Feb 28 | Doubly Linked List Stuff
Quiz: |
|
| Labs | Lab 05-06 Make your own Facebook. | The Social Network movie |
| C13 Thu Mar 1 |
|
|
| Sat Mar 3 | Project 5 Due |
| Day | Readings/Assignments/Topics | Resources |
| Labs | Unix using and timing a sorting program. | |
| C14 Tue Mar 6 | Tip about stacks
and local lifetime storage. Intro to scene graphs (GE Chapter 8)
Call tree scribbled for Cat in Hat Comes Back Part I. |
|
| C15 Thu Mar 8 | MIDTERM EXAM Closed book, one 8 1/2 x 11 inch paper sheet of notes. |
| Day | Readings/Assignments/Topics | Resources |
| Labs | ||
| C16 Tue Mar 20 | New Operations: Call and return. Illustrated with
code in ClickerSortingApplication.java and ClickerSortingEngine.java |
|
| C17 Thu Mar 22 |
| Day | Readings/Assignments/Topics | Resources |
| Labs | Lab09: Reverse-Engineer the Wolf Attack Movie | |
| C18 Tue Mar 27 | Project 06 ASSIGNMENT: Due April 7
Selection Sort explanation:
Activation History tree for the Procrastination Program, including the recursive palendrome printer: Search for homo sapiens in NIH Taxonomy Tree Browser The sorting project framework SW: Maybe ArrayList data structure (extensible array). |
IBM's notes on Java "visibility" (public, private, protected, default explained) |
| C19 Thu Mar 29 | Recursive palendrome making method
activation history and the calls and returns leading up to it
Code of the methods whose calls/returns were diagrammed. Recursive view of palendrome making How MERGESORT works: Steps 1 and 2 Step 3: non-recursive MERGE (different from MERGESORT) Next class: The whole activation history for using MERGESORT to sort 8 numbers. |
| Day | Readings/Assignments/Topics | Resources |
| Labs | No new lab this week (No classes Fri 4/6 and Mon 4/9) | |
| C20 Tue Apr 3 | MERGESORT Leading
Question; question about returning right after step 3 of MERGESORT.
Ways to trace and understand recursion:
|
|
| C21 Thu Apr 5 | The Java ArrayList and its generic
partially-filled dynamically-extendable array.
Prepared slides on recursion, MERGESORT, Trees, etc. Situation of the length 1 subarray Ways 1 and 2 of indexing subarrays |
Towers of Hanoi |
| Day | Readings/Assignments/Topics | Resources |
| Labs | Lab 10: searching/building binary search trees | |
| C22 Tue Apr 10 | Programming Assignment 7: G&E
Scene Graph
MERGESORT method, make it return immediately after the three steps. The Cat in the Hat Comes Back recursively. Recursive code for printing a palendrome analyzed 3 ways: History tree, activation record stack, induction based on the recursive structure of a palendrome. Prepared slides on recursion, MERGESORT, Trees, etc. introducing the expression tree and use of stack in evaluating an expression. |
|
| C23 Thu Apr 12 | The Java ArrayList and its generic partially-filled dynamically-extendable array. Intro to readings 10.3-10.4 Search for homo sapiens in NIH Taxonomy Tree Browser How the stack tracks evaluating an expression recursively. |
Towers of Hanoi |
| Day | Readings/Assignments/Topics | Resources |
| Labs | Lab11: Recursive Pattern Matcher(.pdf) | |
| C24 Tue Apr 17 | Project 07 Notebook! | |
| C25 Thu Apr 19 |
Evaluation of postfix expression using a stack. Towers of Hanoii. |
Postscript Language from Wikipedia |
| Day | Readings/Assignments/Topics | Resources |
| Labs | Lab 12: Record running times for sorting (A) with insertion sort and (B) merge sort files of lengths ranging from really small to multi-millions of lines, so you get times up to several seconds. PLOT the times you get on (1) Linear Graph Paper and (2) Log-Log Graph Paper: Use the Log-Log paper to plot on one graph a HUGE RANGE of file sizes and sorting times. Your TA will grade how many of the required combinations of experiments you did and plotted. | |
| C26 Tue Apr 24 | Scene Graph Project Due 4/21 | Language/Grammars/Trees (Lecture notes of Steve Pinker.) |
| C27 Thu Apr 26 |
| Day | Readings/Assignments/Topics | Resources |
| Labs | ||
| C30 Tue May 8 | Summary for studying for the FINAL
EXAM!!
Please use the Blackboard discussion board for questions and answers of review, and email sdc to alert me to respond. |
|
| Final Exam May 15 | 10:30AM-12:30 in LC-19 Closed Book, one 8 1/2 x 11 paper sheet of notes. |