Useful links:
Date | Topic | Material/Reading | Homework | WWW useful material |
Sept 6, 8 | Class introduction.
Sorting and searching (bubble-sort, insertion sort, selection sort, linear search and binary search). Basic Java review. |
Notes: Intro.pdf |
Searching.pdf |
Sorting.pdf | JavaBasics.pdf
Exercises: gnome.pdf Java: Gnome.java | CreditCard | CreditCard-Test | ScannerEg.java |
Hw1.pdf |
Animations: all sorts | Progr.pearls SW: Java cheatsheet | Elements of Java programming |
Sept 13, 15 | Algorithm analysis. | Notes: Analysis.pdf | Hw2.pdf | SW: Writing clear code |
Sept 15 | Lab 1 (Dots) (due Sept 22) | BlueJ tutorial | ||
Sept 20, 22 | Java graphics.
OOP (inheritance, class hierarchies, polymorphism, etc). |
Notes: Graphics.pdf | OOP.pdf
Java: GraphicsBase.java | GraphicsAndMouse.java | Scribbler2.java | Scribbler1.java |
||
Sept 22 | Lab 2: Drawing (due Sept 29) | Java tutorials: Learning the Java language | Swing | Painting in AWT and Swing | ||
Sept 27, 29 | Arrays. Linked lists. | Notes: Arrays.pdf | Lists.pdf
Java: VectorExample.java | ListVector.java | ||
Sept 29 | Lab 3: Pong (due Oct 6) | |||
Oct 4, 6, 13 | (More) recursion. | Notes: Recursion.pdf | RecursionII.pdf
Java: Sierpinski-skeleton.java | Blobcheck-Skeleton.java | Blobcheck.java | Hanoi-skeleton.java | Peg.java |
Solution: Hanoi.java> | |
Oct 6 | Lab 4: Image processing (due Oct 20) | |||
Oct 18, 20 | (More) recursion. Exam review. Stacks and Queues. | Notes: RecursionII.pdf | Exam1-review.pdf | StacksAndQueues.pdf | ||
Oct 20 | Lab5: Terrains and GIS (due Oct 27) | |||
October 25 | EXAM 1 | |||
October 27 | Searching using stacks and queues. | Java: Missionaries and cannibals: demo | QueueNode.java | SolveMissCan.java | Solution: SolveMissCan.java | Notes from Princeton: Stacks and queues |
Oct 27 | Lab6: Sudoku (due Nov 3) | |||
Nov 1, 3, 8 | Searching using stacks and queues. BFS and DFS. | Notes: SolutionSearch.pdf
Searching a maze: MazeSkeleton.java |
Solution: MazeQueue.java | MazeStack.java | MazeRec.java | |
Nov 3 | Lab 7: Boggle | |||
Nov 8, 10, 15, 17 | Iterators.
Hashing and maps. |
Notes: Iterators.pdf |
Maps.pdf
Java: IteratorExample.java | Word Frequency files: Hamlet | unistd.h | Complete-works-of-Conan-Doyle |
General reading on Symbol tables (by Sedgewick, Wayne @ Princeton) | |
Nov 10 | Lab 7: Boggle | |||
Nov 17 | Lab 8: Percolation (due Dec 1) | |||
Nov 22 | Trees and binary search trees. | Notes: Trees.pdf | Demo: Binary tree | AVL tree | |
Nov 28, Dec 1, 6, 8 | Python. | Notes: Python-tutorial.pdf | Python intro.pdf (from Berkeley) | |
Dec 1 | Lab 9: SmallWorld (due Dec 8) | |||
Dec 8 | Last class: Lab demo. Review and problems. Class feedback. | Notes: Review2.pdf | PracticeProblems.pdf | ||
Friday Dec 17, 9am-12pm | EXAM 2 | Searles 126/128 |