WEEK DAY ANNOUNCEMENTS READING HW
1 Jan 30 Consider bookmarking Java for Python Programmers as a handy reference. (Aug 28) Course Overview Lab 0 - Intro to lab/Eclipse
Feb 01   Introduction to Java Converting a Simple Program
Conditional Execution and User Input
for Loops
Feb 03 Variables and Functions Variable Scope
Functions / Static Methods
2 Feb 06   Introduction to Object Oriented Programming Primitives, Objects, and References
Working with Strings
Lab 1 - The First Cup of Java
Feb 08 Last Day to Add/Drop Inheritance
Adding Methods to an Object
Inheritance
Feb 10   Generics
Introduction to Generics 1
3 Feb 13   Generics
Introduction to Generics 2: Declaration and Instantiation
Lab 2 - More Java
Feb 15 Java Collections
(Read Zyante Ch. 1)
Feb 17 Data Structure: Array Lists, Iterators
(Read Zyante 2.1,2.2)
4 Feb 20   Debugging and Test Driven Development Lab 3 - MyArrayList
Feb 22 Data Structure: Stacks
Data Structure: Queues
(Read Zyante 2.3, 2.4)
Feb 24 Data Structure: Linked Lists
(Read Zyante 3.1-3.7)
5 Feb 27   Data Structure: Linked Lists
(Read Zyante 3.7-3.14)
Lab 4 - Maze Solver
Mar 01 Algorithm Analysis
  • Algorithm Efficiency
  • Constant Time Operations
  • Growth of Functions and Complexity

(Read Zyante 4.1-4.3)
Mar 03 No class
6 Mar 06   Algorithm Analysis
  • Big-Oh Notation
  • Algorithm Analysis

(Read Zyante 4.4-4.5)
Lab 5 - Linked Lists and Runtime
Mar 08 Recursion
  • Recursive Algorithms
  • Divide and Conquer
(Read Zyante 4.6, 5.1, 5.2)
Mar 10 Data Structure: Trees
  • General
  • BST
(Read Zyante 6.1-6.5)
7 Mar 13   Data Structure: Trees
  • General
  • BST
(Read Zyante 6.6-6.10)
Mar 15 No Class (Mar 15-17)
Mar 17
  Mar 20 Spring Break (Mar 23-31)
Mar 22
Mar 24
8 Mar 27   Review for exam No lab this week
Mar 29 Midterm Exam [topics]
Mar 31   Data Structure: Balanced Trees
  • AVL
(Read Zyante 7.1-7.2)
9 Apr 03 Last Day for P/NP, CR/NE,
  or Withdraw
Data Structure: Balanced Trees
  • AVL
(Read Zyante 7.3-7.4)
Lab 6 - Binary Tree Methods
Apr 05   Data Structure: Balanced Trees
  • AVL
  • Red-Black
  • 2-3-4 Trees
(Read Zyante 7.4-7.6)
Apr 07
10 Apr 10   Data Structure: Maps and Sets
(Read Zyante 8.1-8.3)
Lab 7 - Web Page Index
Apr 12 Data Structure: Maps and Sets
Data Structure: Priority Queues
  • Heaps
  • Array based heaps
  • Heapsort

(Read Zyante 9.1-9.2)
Apr 14 Data Structure: Maps and Sets
Data Structure: Priority Queues
  • Heaps
  • Array based heaps
  • Heapsort

(Read Zyante 9.3-9.4)
11 Apr 17   Data Structure: Hashtables
(Read Zyante 10.1-10.3)
Lab 8 - Process Queries
Apr 19 Data Structure: Hashtables
(Read Zyante 10.4-10.6)
Apr 21 Data Structure: Hashtables
(Read Zyante 10.7-10.8)
12 Apr 24   Data Structure: Tries Lab 9 - Million Monkeys
Apr 26
Apr 28 Data Structure: Graphs
  • Terminology
  • Representation
    • Edge List
    • Adjacency Matrix
    • Adjacency List

(Read Zyante 11.1-11.2)
13 May 01   Data Structure: Graphs
  • Terminology
  • Representation
    • Edge List
    • Adjacency Matrix
    • Adjacency List

(Read Zyante 11.3-11.4 )
Lab 10 - Kevin Bacon Game
May 03 Data Structure: Graphs
  • Shortest Path - Unweighted BFS

(Read Zyante 11.5-11.6)
May 05 Review and class wrapup