Below is the current calendar for the CSE143X class. Please keep in mind that Connor 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 simple programs with println static methods Video: methods Video: complex figure Slides: pdf, ppt Slides: pdf, ppt Program: Figure1.java Program: Figure2.java Program: Figure3.java |
primitive types, expressions variables, assignment for loops, nested loops class constants Lecture: panopto video Video: expressions Video: variables/assignment Video: for loop Video: nested loops Video: complex figure Slides: pdf, ppt Slides: pdf, ppt Program: Diamond1.java Program: Diamond2.java |
|
parameters graphics Lecture: panopto video Video: parameter mystery Video: basic drawing Video: parameterized drawing Slides: pdf, ppt Slides: pdf, ppt Program: Diamond3.java Program: Diamond4.java Program: DrawingPanel.java Program: Car1.java Program: Car2.java Program: Car3.java |
Scanner/interactive programs if/else methods that return values Lecture: panopto video Video: Scanner Video: nested if/else Video: factoring if/else Slides: pdf, ppt Slides: pdf, ppt Slides: pdf, ppt Program: Ball1.java Program: Ball2.java Program: BMI.java Diagram: BMI Information Flow Program: BadBMI.java Diagram: Bad BMI Information Flow |
type boolean while loops pseudorandom numbers Lecture: panopto video Video: random numbers Video: sentinel loops Video: type boolean Slides: pdf, ppt Slides: pdf, ppt Slides: pdf, ppt Slides: pdf, ppt Program: Roulette.java Program: Examples.java |
file processing Lecture: panopto video Video: token-based processing Video: line-based processing Video: complex input Slides: pdf, ppt Slides: pdf, ppt Program: SumFile.java Data: numbers.txt |
arrays Lecture: panopto video Video: array mystery Video: array traversal Slides: pdf, ppt Slides: pdf, ppt Program: ArraySample.java Program: ArraySum.java |
more arrays output files Lecture: panopto video Video: array tallying Slides: pdf, ppt Program: Semantics.java Program: Section.java (section.txt) |
objects and classes instance methods assertions Lecture: panopto video Video: Defining a class Video: assertions Slides: pdf, ppt Slides: pdf, ppt Program: PointClient0.java Program: PointClient1.java, Point.java Program: PointClient2.java, Point.java |
toString, constructors encapsulation Lecture: panopto video Video: constructors Video: encapsulation Slides: pdf, ppt Slides: pdf, ppt Program: PointClient3.java, Point.java |
critters review for midterm |
midterm |
linked lists Lecture: panopto video Notes: notes Video: working with nodes Video: linked list traversal Program: ListNode.java Program: LinkedIntList1.java Slides: linked-nodes.pdf Slides: linked-nodes.ppt Slides: linked-list.pdf Slides: linked-list.ppt 143 Lecture 1: panopto video 143 Lecture 2: panopto video |
more linked lists Lecture: panopto video Video: complex list operation slides: Linked-list-2.pdf slides: Linked-list-2.ppt 143 Lecture: panopto video |
ArrayIntList throwing exceptions interfaces Lists Lecture: panopto video Video: ArrayList example Video: ArrayList example Video: middle of the list Video: pre/post Video: exception Program: ArrayIntList.java Program: LinkedIntList.java Program: IntList.java Program: ListClient.java slides: arrarylist.pdf slides: arraylist.ppt |
Sets Maps Lecture: panopto video Video: Map example Video: Set example Program: WordCount.java Link: interesting talk slides: 12-set-map-grammar.ppt slides: 12-set-map-grammar.pdf |
More collections Stuart's notes: notes Program: Friends0.java Program: Friends1.java Program: Friends2.java |
recursion notes: notes Lecture: panopto video slides: recursion.pdf slides: recursion.ppt Video: recursive tracing Program: Angle.java, AngleTest.java Program: WriteStars.java, Program: ReverseFile.java, Program: BadArraySum.java |
more recursion public/private approach grammars Lecture: panopto video Video: recursive programming Video: recursive programming Program: Crawler.java Program: Sierpinski.java, DrawingPanel.java |
Veteran's Day Holiday |
regular expressions recursive backtracking Reading: Reges/Stepp 12.5 (3rd edition) Lecture: panopto slides: recursive_backtracking.pdf slides: recursive_backtracking.ppt Program: Splitter.java Board.html Data: fun.txt |
more on recursive backtracking Program: BadQueens.java Link: wikipedia: 8 queens diagram: anagrams trace (text) diagram: anagrams trace (picture)—click on image to enlarge Program: Queens.java, Board.html, Board.java Source code: queens.zip |
binary trees Lecture: panopto video notes: notes demo: Tree.jar Video: tree traversal I Video: tree traversal II Program: IntTreeNode.java, BadIntTree.java Program: IntSearchTreeClient.java |
binary search trees Huffman assignment I Lecture: panopto Old lecture: panopto Video: x = change(x); Program: IntTreeNode.java, IntTree.java Program: IntSearchTreeClient.java |
Huffman assignment II Abstract classes Program: ShapeTest.java, Shape.java, Square.java, Circle.java, |
Thanksgiving Holiday |
complexity Lecture: panopto Video: binary search Video: complexity Program: MaxSum.java |
stacks and queues Lecture: panopto Program: Practice.java Program: Customers.java Program: BackButton.java notes: stack.txt notes: queue.txt |
hashing Lecture: panopto Program: HashSet.java Program: HashTest.java Data: trek.txt (warning: 12.2 mb) |
inheritance notes: notes Lecture: panopto Video: using super Video: polymorphism |
IntList case study generic binary search tree Lecture: panopto Program: Tree.java, TreeNode.java Program: TreeClient.java Program: IntList.java Program: AbstractIntList.java Program: ArrayIntList.java Program: LinkedIntList.java |
review for final merge sort Lecture: panopto Program: Sorter.java Video: sorting |
Final Exam -- Thursday, December 15, 2:30pm |