The course schedule is tentative and subject to change. This page will be updated frequently to reflect the most up-to-date schedule. JS refers to the free Java Structures book.
Date | Class | Type | Topic | Readings | Code | |
---|---|---|---|---|---|---|
Wed | Sep 1 | 1 | in-person | Introduction, Lab 0 | Intro Slides | Hello.java |
Fri | Sep 3 | 2 | in-person | Variables & Types | JS Appendix B | |
Mon | Sep 6 | 3 | in-person | Functions, Conditionals, Loops | Lec3.java | |
Wed | Sep 8 | 4 | in-person | Objects & Classes | point.py Point.java PointTest.java | |
Fri | Sep 10 | 5 | in-person | Objects & Classes | line.py | |
Mon | Sep 13 | 6 | in-person | Arrays, Lab 1 | Lab1Topics.java StaticTest.java | |
Wed | Sep 15 | 7 | in-person | Interfaces & Implementations | Die.java PlayDiceGame.java SixSidedDie.java SeansLuckyDie.java | |
Fri | Sep 17 | 8 | in-person | Lists, Maps, & Generics | ListDemo.java MapDemo.java | |
Mon | Sep 20 | 9 | in-person | Inheritance | Creature.java Reef.java Fish.java Minnow.java Shark.java WatorTest.java | |
Wed | Sep 22 | 10 | in-person | Debugging, Lab 2 | ||
Fri | Sep 24 | 11 | in-person | Dynamic Arrays | AbstractSimpleList.java SimpleArrayList.java | |
Mon | Sep 27 | 12 | in-person | Asymptotic Analysis & Big O | Big O definition | |
Wed | Sep 29 | 13 | in-person | Big O & Dynamic Arrays | JS 5.1 Lab Interlude | |
Fri | Oct 1 | 14 | in-person | Searching and Sorting | JS 6.1-6.3 | BinarySearch.java BubbleSort.java SelectionSort.java InsertionSort.java SortSim.java |
Mon | Oct 4 | 15 | in-person | Comparators, Lab 3 | ||
Wed | Oct 6 | 16 | in-person | Linked Lists | SimpleLinkedList.java | |
Fri | Oct 8 | in-person | Midterm Exam 1 | |||
Mon | Oct 11 | No Class: Fall Break | ||||
Wed | Oct 13 | 17 | in-person | Linked Lists | ||
Fri | Oct 15 | 18 | in-person | Stacks and Queues | ||
Mon | Oct 18 | 19 | in-person | Lab 4 | ||
Wed | Oct 20 | 20 | in-person | Array Queues | AbstractSimpleQueue.java SimpleArrayQueue.java | |
Fri | Oct 22 | 21 | in-person | Iterators | SimpleArrayListIterator.java SimpleLinkedListIterator.java | |
Mon | Oct 25 | 22 | in-person | Iteration and Iterables | IterableString.java | |
Wed | Oct 27 | 23 | in-person | Lab 5 | ||
Fri | Oct 29 | 24 | in-person | Recursion | RecursionDemo.java | |
Mon | Nov 1 | 25 | in-person | Recursion | Hanoi.java BlobWorld.java | |
Wed | Nov 3 | 26 | in-person | Recursion, Lab 6 | ||
Fri | Nov 5 | 27 | in-person | Trees | BinaryTree.java | |
Mon | Nov 8 | 28 | in-person | Binary Trees | ExpressionTreeDemo.java GuessingGame.java | |
Wed | Nov 10 | 29 | in-person | Lab 7 | HasSubsetSum.java | |
Fri | Nov 12 | 30 | in-person | Tree Iteration, Priority Queues | PreorderIterator.java | |
Mon | Nov 15 | 31 | in-person | Heaps | SimplePriorityQueue.java | |
Wed | Nov 17 | in-person | Midterm Exam 2 | |||
Fri | Nov 19 | 32 | in-person | Heaps, Binary Search Trees | ||
Mon | Nov 22 | No Class: Thanksgiving Break | ||||
Wed | Nov 24 | No Class: Thanksgiving Break | ||||
Fri | Nov 26 | No Class: Thanksgiving Break | ||||
Mon | Nov 29 | 33 | in-person | Binary Search Trees | BinarySearchTree.java BinaryTreeView.java | |
Wed | Dec 1 | 34 | in-person | Lab 8 | ||
Fri | Dec 3 | 35 | in-person | Binary Search Trees, AVL Trees | ||
Mon | Dec 6 | 36 | in-person | Hash Tables | ||
Wed | Dec 8 | 37 | in-person | Hash Tables | AbstractSimpleMap.java SimpleHashMap.java | |
Fri | Dec 10 | 38 | in-person | Hash Functions & Wrap-up | StringHash.java |