Announcements
| All projects due by 5:00 pm Friday, 11-June | |||||||
Rick will be in the lab (930GS)
| |||||||
| Optional Random Writer with HashMap
considered extra credit to replace your lowest lab score. This will be
due | |||||||
Either have your final project live graded or turn it in to WebCat under
DiceTray stringFound
| |||||||
| . You need your CSID from this link https://www.cs.arizona.edu/computing/services/csid.html | |||||||
| And if you want a Boggle GUI, use the final project spec and BoggleGUI.java |

Homework
| None |
Lecture Outline
| Quiz | |
| Go to lab |
![]()
Announcements
New: Boggle Specs now include the Design of
DiceTray and Boggle for Iteration 2
| |||
| Final Project posted: Part 1 due tonight, part 2 Thursday night | |||
| DiceTray stringFound(String) is now WebCatted | |||
| Optional Random Writer with HashMap now considered extra credit to replace your lowest lab score. This will be due Thursday 4:00pm | |||
| Quiz 5: Binary tree traversals, recognize BSTs, add two methods to OrderedMap<K, V> | |||
| Thursday is the last day of class: Take quiz then go to lab immediately to work on Boggle |
Homework
| Work on Boggle: DiceTray with DiceTray(char[][]) and boolean stringFound() due tonight at 10:00pm | |
| Take this practice quiz doc or pdf |
Lecture Outline
Final Project
|
Lab in 930GS
| Work on Final Project |
![]()
Announcements
NEW After class: Final Project posted if you wish to
get started doc or pdf
| |||
| NEW After class: Random Writer with HashMap now considered extra credit to replace your lowest lab score. This will be due Thursday 4:00pm |
Homework
| Work on Project 7: Game of 20 Questions, due tonight @ 10:00pm |
Lecture Outline
| OrderedMap remove (algorithm only, no code) | |||||||
Code Demo, add these three methods
| |||||||
| Introduce some of Java's Collection framework | |||||||
| Break | |||||||
Introduce an algorithm for Random
writing by Joe Zachary
|
Lab in 930GS
| RandomWriter with HashMap |
![]()
Announcements
Remaining after today
|
Homework
| If you haven't already done so, read Chapter 11: BinaryTrees | |
| Complete Project 7: Game of 20 Questions by 10:00pm Tuesday |
Lecture Outline
Add two more methods to ExpressionTree
| |||||||||
2-OrderedMap.ppt using a
Binary Search Tree (BST)
| |||||||||
| Discuss and Demo Project 6: GameOf20 |
Lab in 930GS
| Expression Tree: see labs page | |
| If time permits, work on Project 7: Game of 20 Questions |
![]()
Announcements
Remaining after today
|
Homework
| None over the weekend | |||||
For Tuesday
|
Lecture Outline
| Quiz | |||
| Introduce 11-BinaryTrees.ppt 11-1..11-18 | |||
| Code Demo: Begin Expression Tree | |||
Discuss Project 7: Game of 20 Questions
|
Lab in 930GS
| Cancelled |
![]()
Announcements
| Quiz Thursday: Recursion. |
Homework
| Complete RecursionFun | |
| Take Practice Quiz pdf |
Lecture Outline
Recursion in two problem-solving strategies
|
Lab in 930GS
| Using the algorithm in Obstacle Course, complete two methods (possible and findExit), see lab page | |
| If time permits, work on RecursionFun |
![]()
Announcements
| Project 6: "RecursionFun" due Wednesday night |
Homework
| Read to the end of Chapter 10: Recursion | |
| Work on Project 6 |
Lecture Outline
| Code demo: Palindrome | |||
Code demo: Recursion with arrays
| |||
More Recursion MoreRecursion.ppt
10B-1 .. 10B-14
| |||
| In class: Four Recursion Problems |
Lab in 930GS
Complete these three from http://javabat.com/java/Recur1
| ||||
| Work on project 6: RecursionFun |
![]()
Announcements
| Project 5: LinkedPriorityList due tonight | |
| Project 6 Linked: RecursionFun due Wednesday night |
Homework
| Begin Project 6 up to but not including commas(long): RecursionFun (see projects page) |
Lecture Outline
| Begin 10-SimpleRecursion.ppt | |
| Consider Project 6: RecursionFun | |
| Try one or two http://javabat.com/java/Recur1 | |
| In class: Four Recursion Problems |
Lab in 930GS
| Complete Lab8.html Expression.valueOf(String) | |||
From the top five rows (ints and strings, no arrays yet). complete as many of these as you can http://javabat.com/java/Recur1
|
![]()
Announcements
Too many projects? Project 6 will be a lab to finish today
|
Homework
| Work on Project 5 | |||
Read pages 170-184 in Chapter 10: "Recursion"
|
Lecture Outline
Quiz Review
| |||||
| Quiz | |||||
| Break, meet back at Time TBA | |||||
Introduce Stacks, 10-1 ..
10-16
| |||||
Another Stack Application
|
Lab in 930GS
| None |
![]()
Announcements
| NEW Practice Quiz 3 Answer doc or pdf | |||
Project 5: LInkedPriortyList<E> is linked and WebCatted (see Projects
page)
| |||
Tomorrows Quiz Thursday on Collection Considerations and the Singly Linked Structure
|
Homework
| If necessary, submit ArraySet<E> to WebCat before Thursday's quiz | |||
| Complete Lab LinkedSet<E> implements Set<E> and submit to WebCat before Thursday's quiz | |||
Work on Project 5: "LinkedPriorityList", due Monday @ 10:00 pm.
| |||
| Take this practice quiz: doc or pdf | |||
| Complete all self-checks in Chapters 6 and 8 (answers on web page) | |||
| Read Chapter 9: Stacks and Queues |
Lecture Outline
More Algorithms with a new Linked Structure: OrderedList
| |||||||
| Introduce Project 5: LinkedPriorityList<E> implements PriorityList<E> | |||||||
Ask 127A Strudents using Java Illuminated if a 127A book like our 227
would be good or bad
| |||||||
Complete in class:
1) Write a test for OrderedList remove(E) and the remove(E) method
|
Lab in 930GS
| Complete LinkedSet<E> implements Set<E> see Labs Page | |||
If time permits, work on Project 5,
|
![]()
Announcements
| Project 4 extended to tonight: Tuesday, 24-June 10:00 pm. | |||
PriorityListGUI.java has been updated to
NOT have Iterator<E>
| |||
Quiz Thursday on Collection Considerations and the Singly Linked Structure
| |||
| To transfer files between home and your "H" drive of your CS account, try WinSCP |
Homework
| If necessary, submit ArraySet<E> to WebCat (a lab from two days worth 3 pts) | |
| Work on Project 5, due Monday @ 5:00 pm. |
Lecture Outline
| Slides 28..34 of 06-CollectionConsiderations.ppt (5 minutes) | |||||||||||||
| Introduce Linked Structures with 08LinkedIntro.ppt (25 minutes) | |||||||||||||
Code demo (and a preview of today's lab activity) (25 minutes)
| |||||||||||||
| Complete in class and go to lab |
Lab in 930GS
Complete LinkedSet<E> implements Set<E>
|
![]()
Announcements
| NEW Project 4 extended to Tuesday Night 10:00 pm. | |||
NEWPriorityListGUI.java has been updated to
NOT have Iterator<E>
|
Homework
| Read Chapter 8 |
Lecture Outline
Another interface Iterator: Add an iterator to GenericCollection
| |||||||||
Consider the interfaces in java.util
| |||||||||
| Preview today's lab |
Lab in 930GS
Make Set<E> extend Iterable<E> and add 3 new methods to the
ADT
|
![]()
Announcements
| Project 4 posted see Projects Page |
Homework
| Read all of Chapter 6, all pages | |
| Read the first 11 pages of Chapter 7: The list ADT, (online pages 110..120) | |
| Work on Project 4 ArrayPriorityList<E> implements PriorityList<E>, Due next Monday @ 10:00pm |
Lecture Outline
| Slides 11..50 of 06-CollectionConsiderations.ppt | |
| Convert ObjectCollection to have Generics |
Lab in 930GS
| Given a unit test and an interface, write a generic set class see Labs Page |
![]()
Announcements
| Quiz 1 Stats (udpated after class) | |||||||||||||
| |||||||||||||
Thursday's quiz will be on classes, 1D arrays, 2D arrays,
classes with instance variables, and a question that asks you to answer
O(1), O(log n), O(n log n), O(n2), O(n3)
|
Homework
| Take the practice quiz | |
| Complete Project 3 Game of Life: Due tonight 10:00pm |
Lecture Outline
Slides 1..10 of 06-CollectionConsiderations.ppt
(Reading Chapter 6 is optional)
|
Lab in 930GS
See Labs page
| |||||
| If necessary, and time permits, work on your GameOfLife project (due at 10:00 pm tonight) |
![]()
Announcements
| Thursday's quiz will be on classes, 1D arrays, 2D arrays, and classes with instance variables |
Homework
| Work on Project 3 Game of Life: Due Wednesday 10:00pm |
Lecture Outline
Algorithm Analysis (or which Big O is it? 1, log n, n, n log n, n2,
or n3)
| |||||||||||||||||
Get back to 2D arrays
|
Lab in 930GS
| Begin GameOfLife |
![]()
Announcements
| Song/SongTest lab extended to 5:00 pm today |
Homework
Read Chapter 5: Algorithm Analysis (all 16 pages)
| |||
| Complete Project 2 (due at 10:00 pm tonight): see Projects Page | |||
| Begin Project 3 (one method at a time) |
Lecture Outline
Questions on current project: Descriptive Statistics?
| |||||||||||
Add four more methods to our String227 class
| |||||||||||
Two-D Arrays
| |||||||||||
| Introduce Project 3: GameOfLife See Projects page |
Lab in 930GS
Required: Matrix 3.pdf
| |||||||
If time permits, work on any of these
|
![]()
Announcements
| Here are the answers to Practice Quiz 1 |
Homework
| Read Chapter 3: Implementing Types as Java Classes (10 pages) | |
| Complete class Song its unit test SongTest, turnin via WebCat by Monday 12:50pm | |
| Work on Project 2: see Projects Page |
Lecture Outline
| Quiz review | |||||||||
Quiz: 35 minutes, plus 5 minute break (or use those 5 minutes to go finish
quiz 1)
| |||||||||
Introduce arrays 2-79 .. 2-90
| |||||||||
Introduce TDD
|
/**
* Construct a mutable String object with a java.lang.String
*/
public String227(String initialString) {
}/**
* Return the number of chars in this String227 object.
*/
public int length() {
return 0;
}
/*** Returns the char value in this sequence at the specified index. The first
* char value is at index 0, the next at index 1, and so on, as in array
* indexing. The index argument must be greater than or equal to 0, and less
* than the length of this sequence.
*/
public char charAt(int index) {
return ' ';
}
/**
* Return all chars from beginIndex up to, but not including endIndex as s
* String227 object.
*
* Precondition: beginIndex >= 0, endIndex <= this object's
* length, and beginIndex < endIndex
*/
public String227 substring(int beginIndex, int endIndex) {
return null;
}
| Introduce Project 2: Descriptive Statistics (see Projects page) |
Lab in 930GS
Three JavaBat array problems: countEvens, bigDiff, and centeredAverage
| |||
If time permits, begin reading Chapter 4 and complete class Song and a
unit test
|
![]()
Announcements
| Quiz 1 Thursday 12-June
|