Lecture Notes

bullet 8/26: CS1 review and goals for CS2
bullet 8/28: Quiz 1
bullet 8/30:
bullet     Review of CS1 : Chapter 1        
bullet     Sample code for calculator MVC
bullet     Class diagram of calculator MVC 
bullet 9/4:
bullet     Simple java program to illustrate array use
bullet     Project 1
bullet 9/6:
bullet     Inheritance and Polymorphism: Chapter 2
bullet     Interface, abstract class, concrete class
bullet                          UML design: foodHierarchy
bullet                          code: pizza hierarchy; pizza and wings hierarchy
bullet 9/9: Project 1 discussion; Grading Guidelines
bullet         Analysis of algorithms: Chapter 3
bullet 9/11: Chapter 3: Analysis of Algorithms.
bullet            UML tool; Class diagrams and Sequence Diagrams (MVC, calculator, project1)
bullet 9/13: Chapter 4: Stack Abstract Data Type
bullet            Java Object class (The root of all class hierarchies)
bullet 9/16: Yom Kippur (no classes)
bullet 9/18: Stack Application: Balancing Parentheses (IsBalancedDemonstration.java)
bullet            Recursion
bullet            Use of recursion and built-in iterators in Project1 (in-class notes only)
bullet 9/20: Project 1 Due Date
bullet           Queue ADT (interface, implementation and application)
bullet 9/23: Exception Handling
bullet 9/25: Project 2  (.pdf) Discussion
bullet 9/27: Project 2 Analysis using UML Usecase diagram
bullet           Revisit Stack.java with EmptyStackException.java
bullet           Stack and Queue examples
bullet           Midterm Exam Topics
bullet 9/29: Retrospective on Project1
bullet           Maze Problem: no-stack-no-recursion solution, stack solution, recursive-solution
bullet           Maze UML Classdiagram (.doc) (.pdf)
bullet 10/2: Exam 1
bullet 10/4: Maze Runner (Take 2)
bullet           Linked List and List Iterators; Sequence
bullet 10/7: Java Linked List, ListIterator
bullet 10/9: State-based Linear Recursive Linked List
bullet           Mynotes on LRSStructure
bullet           Simple Implementation of Linked List in the LRS paper
bullet 10/11: Complete LRS Linked List
bullet           : List Application(code) : Description
bullet 10/14: Trees: Terminology and Examples
bullet 10/16: Binary Tree: Different Implementations (simple, simple+visitor, State-based)
bullet 10/18: Binary Tree: Visitor Pattern (Sample Code)
bullet 10/21: State_based Binary Tree; Code
bullet 10/23: Binary Search Tree (Animated demo on the web)
            Code
bullet             Interactive Demo from the authors of our textbook
bullet 10/25: BST Delete included   (code)   
bullet 10/28: Decision Tree; Java Serialization   
bullet             Demo code
bullet 10/30: AVL Trees Interactive AVL Tree Demo from the authors of out text
bullet 11/1: Project 3
bullet 11/4: More Project 3; Sorting
bullet 11/6: Sorting (continued)
bullet 11/8: Heap and Quick Sort (ScotlandYard Routes: only Taxi;others will be  here soon)
bullet 11/11: Linear and Binary Search
bullet 11/13: Hashing
bullet 11/15: Java Support for Hashing (code)
bullet 11/18: Java HashMap (continued) Strategy Design Pattern (code)
bullet 11/20: Code sample for Strategy
bullet 11/22: Graph ADT
bullet 11/25: Project 3 Q&A
bullet 12/2: AVL Tree Review
bullet 12/4 : Review for final Exam
bullet 12/6: Project 4 (Technical Documentation)
bullet 12/9: Sample Questions for Final Exam
bullet 12/10: Final Review: More Sample Questions (URL for Binary Tree Review)