Course Schedule
CSC 207 Algorithms and Object Oriented Design Spring 2009

Note: Homework is shown in the assignment column on the day it is due (not the day assigned).

Week Day Date Topic Reading Assignment
1 Mon 1/19 Introduction; What is this course all about?
HW 0: Getting to Know You
Tue 1/20 Introduction to Java Weiss 1.1-1.6, pp. 3-20
Wed 1/21 Lab: Introduction to Java Basic I/O, Java Packages HW0 Due
Fri 1/23 Reference types Weiss 2.1-2.6, pp. 27-58
2 Mon 1/26 Lab: More Java
Tue 1/27 Lab: Types and Control
Wed 1/28 Objects and Classes Weiss 3.1-3.6, pp. 63-82
Fri 1/30 Lab: Rational Numbers
3 Mon 2/2 Inheritance Weiss 4.1-4.5.2, pp. 93-119
Tue 2/3 Generics Weiss 4.6-4.9, pp. 124-149 Assignment 1
Wed 2/4 Lab: Inheritance and Generics
Fri 2/6 Java Quiz
Introduction to Design Patterns
4 Mon 2/9 Lab: Generics and Interfaces
Tue 2/10 Lab: Builder Pattern Cooper Assignment 2
Wed 2/11 Lab: Facade Pattern Cooper
Fri 2/13 Lab: State Pattern Cooper
5 Mon 2/16 Introduction to Analysis Weiss 5.1-5.3, pp. 163-176
Tue 2/17 Asymptotic Analysis Weiss 5.4-5.8, pp. 177-190 Assignment 3
Wed 2/18 Lab: Algorithm Analysis
Fri 2/20 Lab: Introducing the Java Development Environment for Emacs (JDEE)
Lab: Getting the Book Code
6 Mon 2/23 Collections API Weiss 6.1-6.5, pp. 201-224
Tue 2/24 Sets and Maps Weiss 6.7-6.8, pp. 228-239 Assignment 4
Wed 2/25 Lab: Stacks and Queues Weiss 6.6, pp. 225-228
Fri 2/27 Priority Queues and Collections applications Weiss 6.9, pp. 239-243
7 Mon 3/2 Recursion Weiss 7.1-7.3, pp. 251-268
Tue 3/3 Numerical Applications Weiss 7.4, pp. 269-277 Assignment 5
Wed 3/4 NO CLASS Optional Lab: Recursion in Blobland
Fri 3/6 Exam 1
8 Mon 3/9 Divide and Conquer Weiss 7.5, pp. 277-287
Tue 3/10 Sorting Weiss 8.1-8.5, pp. 303-316
Wed 3/11 Quicksort Weiss 8.6-8.8, pp. 316-335
Fri 3/13 Lab: Sorting It Out Assignment 6
Enjoy Spring Break!
Week Day Date Topic Reading Assignment
9 Mon 3/30 Lab: Inner Classes Weiss 15.1-15.2, pp. 518-524
Tue 3/31 AbstractCollection Weiss 15.3-15.4, pp. 524-528
Wed 4/1 ArrayList implementation Weiss 15.5, pp. 529-534
Fri 4/3 Lab: Implementing Collections
10 Mon 4/6 Stacks and Queues Weiss 16.1, pp. 539-549
Tue 4/7 Stacks and Queues Weiss 16.2-16.5, pp. 549-559
Wed 4/8 Lab: Dequeue
Fri 4/10 Linked Lists Weiss 17.1-17.3, pp. 563-577 Assignment 7
11 Mon 4/13 Linked Lists Weiss 17.4-17.5, pp. 577-590
Tue 4/14 Lab: Linked Lists
Wed 4/15 Trees Weiss 18.1-18.2, pp. 595-608
Fri 4/17 Exam 2
Mon 4/20 Tree Traversal Weiss 18.3-18.4, pp. 609-624
Tue 4/21 Tries
Wed 4/22 Lab: Binary Trees
Fri 4/23 Binary Search Trees Weiss 19.1,19.3, pp. 629-639, 644-648
13 Mon 4/27 Boggle® Assignment Kick-Off
Tue 4/28 Hash Tables Weiss 20.1-20.3, pp. 713-723 Assignment 8
Wed 4/29 Hash Tables Weiss 20.4-20.7, pp. 723-738
Fri 5/1 Lab: Hash Tables
14 Mon 5/4 Priority Queue / Binary Heap Weiss 21.1-21.3, pp. 745-760
Tue 5/5 Heapsort / External sorting Weiss 21.4-21.5, pp. 761-771
Wed 5/6 TBD Assignment 9
Fri 5/8 Boggle Tournament / Evaluations
Jerod Weinman
Created 15 January 2009