Course Schedule

Readings are from Bailey's Java Structures. Additional readings may be given occasionally. Links will be added here with additional information about lectures and labs. All dates are subject to change, and are provided only as a general guideline.

Date Topic and/or Event Readings
Sept. 9 Introduction and Overview Ch. 0
Sept. 12 OOP and Java Ch. 1
Sept. 14 More Java Appendix B
Sept. 14 Lab 1: Java, Unix, and the Silver Dollar Game
Sept. 16 More Java, Pre-/Post-conditions, Assertions, Associations Ch. 2
Sept. 19 Wizard's Castle Overview, Vector Introduction
Sept. 21 Vector Operations and Usage Ch. 3
Sept. 21 Lab 2: The Wizard's Castle
Sept. 23 Vector Implementations
Sept. 26 Complexity and Asymptotic Analysis Ch. 4.1
Sept. 28 Recursion Ch. 4.2
Sept. 28 Lab 3: Word Generator
Sept. 30 Mathematical Induction, Searching Ch. 5
Oct. 3 Comparable Objects, Sorting
Oct. 5 Advanced Sorting
Oct. 5 Lab 4: Comparators are my favorite Sort of Vectors
Oct. 7 Sorting Wrapup, Iterators Ch. 6, Ch. 7
Oct. 10 No class - Fall Reading Period
Oct. 12 Lists Ch. 8
Oct. 12 Lab 5: The Twin Towers Problem
Oct. 14 More Lists
Oct. 17 Circular and Doubly-Linked Lists
Oct. 19 Stacks Ch. 9.1
Oct. 19 Lab 6: Debugging Practice, Exam 1, during lab period
Oct. 21 Mountain Day!
Oct. 24 Exam Aftermath, Stack Implementations and Applications, Queues Ch. 9.2-9.4
Oct. 26 Stack and Queue Implementations and Applications
Oct. 26 Lab 7: P.S.: It's Just a Stack
Oct. 28 Trees: Introduction, Specification, Applications and Implementation Ch. 11.1-11.5
Oct. 31 Tree Traversals Ch. 11.6
Nov. 2 Tree Iterators Ch. 11.7-11.10
Nov. 2 Lab 8: Hex-a-Pawn
Nov. 4 Tree Iterator Wrapup, Ordered Structures Ch. 10
Nov. 7 Darwin Lab Overview, Ordered Structures
Nov. 9 Array Representation of Trees, Priority Queues, Heaps Ch. 12
Nov. 9 Lab 9: Darwin
Nov. 11 Heapsort
Nov. 14 Binary Search Trees Ch. 13.1-13.4
Nov. 16 Balanced Trees Ch. 13.5-13.8
Nov. 16 Continue Lab 9, Exam 2, during lab period
Nov. 18 Finish AVL Trees; Graphs: Introduction, Specification, Applications Ch. 15.1-15.2
Nov. 21 Graph Implementations Ch. 15.3
Nov. 23-25 No class - Happy Thanksgiving
Nov. 28 Graph Algorithms Ch. 15.4-15.5
Nov. 30 Graph Algorithms
Nov. 30 Lab 10: How many millimeters in a furlong?
Dec. 2 Dijkstra's Algorithm, Maps and Dictionaries, Hash Tables Ch. 14.1-14.3
Dec. 5 Hashing Ch. 14.4-14.7
Dec. 7 Hashing II, Overview, Course Evaluations
Dec. 7 Lab 11: Flytrap Airlines
Dec. 9 Hashing Wrapup, Bonus Topics, Review
Dec. 16 Final Exam, 1:30 PM, TCL 206