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 Q&A: questions 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 Q&A: questions Notes: notes Video: pre/post Video: exception Program: ArrayIntList.java Program: ArrayIntListClient2.java |
Lists, Sets for-each loop Lecture: panopto video Q&A: questions Notes: notes Slides: pdf, ppt Video: ArrayList example Video: ArrayList example Video: Set example 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 Video: interfaces Program: IntList.java Program: ListClient.java Program: PointArray.java |
linked lists Lecture: panopto video Notes: notes Video: working with nodes Program: ListNode.java Program: ListExample.java Program: ListTest.java |
Martin Luther King holiday |
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 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 Notes: notes Program: Splitter.java Data: fun1.txt (12:30 lecture version) Data: fun2.txt (2:30 lecture version) |
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 |
optional midterm review |
recursive backtracking Lecture: panopto video Notes: notes Program: Queens.java, Board.html Source code: queens.zip |
more on recursive backtracking Lecture: panopto video Notes: notes diagram: 4-queens trace diagram: anagrams trace (text) diagram: anagrams trace (picture)—click on image to enlarge |
binary trees Lecture: panopto video Notes: notes Video: tree traversal Video: tree traversal Program: IntTreeNode.java, IntTree.java Program: IntTreeClient.java |
Presidents Day Holiday |
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 |
abstract classes Lecture: panopto video Notes: notes Program: Shape.java, ShapeTest.java Program: Circle.java, Rectangle.java, Square.java |
Huffman assignment Notes: notes |
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 -- Tuesday, March 15, 12:30-2:20 |