Below is the current calendar for the CSE143 class. Please keep in mind that Stuart is constantly updating this. It should accurately describe the past, but it won't always accurately predict the future. Links to lecture notes are included as they become available.
Monday | Wednesday | Friday |
---|---|---|
administrative details ArrayIntList (part 1) Lecture: panopto video Notes: notes Video: middle of the list Program: ArrayListSample.java Program: ArrayIntList.java Program: ArrayIntListClient.java CSE142 Review: pdf, ppt |
ArrayIntList (part 2) pre/post, exceptions Lecture: panopto video Notes: notes Video: pre/post Video: exception Program: ArrayIntList.java Program: ArrayIntListClient2.java |
|
interfaces Lists, Sets for-each loop Lecture: panopto video Notes: notes Video: interfaces Video: ArrayList example Video: ArrayList example Video: Set example Program: IntList.java Program: ListClient.java Program: ListSetExample.java |
stacks & queues Lecture: panopto video Notes: notes Video: stack basics Video: queue basics Video: advanced stack/queue Program: SimpleStackQueue.java Program: StackQueue.java |
arrays of objects interfaces Lecture: panopto video notes: notes Program: ArrayIntList.java Program: TestRemoveAll.java Video: interfaces Program: IntList.java Program: ListClient.java Program: PointArray.java |
linked lists Lecture: panopto video (spring version) Notes: notes Video: working with nodes Program: ListNode.java Program: ListExample.java Program: ListTest.java |
linked lists & loops Lecture: panopto video Notes: notes Video: linked list traversal Program: LinkedIntListClient.java Program: LinkedIntList.java |
more linked lists Lecture: panopto video Notes: notes Video: complex list operation |
binary search complexity Lecture: panopto video Notes: notes Video: complexity Program: MaxSum.java |
Maps Lecture: panopto video Notes: notes Video: Map example Program: Instructor.java Program: WordCount.java Program: Friends1.java |
more Maps Notes: notes Program: Friends.java Data file: friends.dot |
recursion Lecture: panopto video (spring version) Notes: notes Video: recursive tracing Program: Recurse.java |
more recursion public/private approach Lecture: panopto video Notes: notes Video: recursive programming Video: recursive programming Program: Recurse2.java Program: Crawler.java Program: Sierpinski.java, DrawingPanel.java |
regular expressions grammars Lecture: panopto video Notes: notes Program: Splitter.java Data: fun.txt |
inheritance Lecture: panopto video Notes: notes Video: using super Video: polymorphism Review: study guide from a former TA |
mergesort Lecture: panopto video Notes: notes Program: Sorter.java Program: StableSort.java Video: sorting |
recursive backtracking Lecture: panopto video Notes: notes Program: Queens.java, Board.html Source code: queens.zip |
optional midterm review |
more on recursive backtracking Notes: notes diagram: 4-queens trace diagram: anagrams trace (text) diagram: anagrams trace (picture)—click on image to enlarge |
Veterans Day holiday |
binary trees Lecture: panopto video Notes: notes Video: tree traversal Video: tree traversal Program: IntTreeNode.java, IntTree.java Program: IntTreeClient.java |
binary search trees Lecture: panopto video Notes: notes Demo: Tree.jar Video: x = change(x); Program: IntTree.java Program: IntSearchTreeClient.java |
Comparable interface generic binary search tree Lecture: panopto video Notes: notes Video: implementing Comparable Program: Angle.java, AngleTest.java Program: SearchTree.java, SearchTreeNode.java Program: SearchTreeClient.java |
optional topic: Java 8 functional programming Lecture: panopto video notes: notes Program: Java8Demo.java Link: related talk |
optional topic: QuickSort Notes: notes Program: Insertion.java Program: Quick.java |
Thanksgiving holiday |
Huffman assignment Notes: notes |
abstract classes Lecture: panopto video Notes: notes Program: Shape.java, ShapeTest.java Program: Circle.java, Rectangle.java, Square.java |
ArrayIntList (part 3) iterators, resizing Lecture: panopto video notes: notes Program: ArrayIntList.java Program: ArrayIntListIterator.java |
IntList case study Lecture: panopto video Notes: notes Program: IntList.java Program: AbstractIntList.java Program: ArrayIntList.java Program: LinkedIntList.java |
hashing Lecture: panopto video Notes: notes Video: hashing Program: HashSet.java Program: HashTest.java Data: trek.txt (warning: 12.2 mb) |
optional final exam review |
Final Exam -- Wednesday, December 13, 2:30-4:20 |