Course Schedule


This schedule is tentative only.  Project due dates and exam dates will be confirmed in lecture.

Monday Wednesday Sunday
1/28: Course Intro
         Recursion I
1/30: Recursion II
         Project 0 assigned
2/3
2/4:   C++ I/O

Project 1 assigned

2/6: Asymptotic Analysis 2/10: Project 1 HW due (midnight)
   Project 0 due (midnight)
2/11: MergeSort, with runtime analysis 2/13: QuickSort, with runtime analysis 2/17: Project 1 due (midnight)
2/18: Midterm review 2/20: Midterm I 2/24
2/25: ADTs, Encapsulation
         C++ Object Syntax
Project 2 assigned
2/27: Working with classes
     Constructors/destructors
3/3: Project 2 HW due (midnight)
3/4: Pointers & Dynamic Allocation 3/6: Copy constructors; overloaded assignment 3/10: Project 2 due (midnight)
3/11: Composition of Objects
Project 3 assigned
3/13: Exceptions 3/17:
3/18: Midterm review 3/20: Midterm II 3/24: Project 3 HW due (midnight)
3/25: Spring Break 3/27: Spring Break 3/31: Project 3 due (midnight)
4/1: Inheritance I 4/3: Inheritance II 4/7
4/8: Polymorphism I
Project 4 assigned
4/10: Polymorphism II
4/14: Project 4 HW due (midnight)
4/15: Templates I 4/17: Templates II 4/21: Project 4 due (midnight)
4/22: Lists
Project 5 assigned
4/24: Stacks  4/28: Project 5 HW due (midnight)
4/29: Queues 5/1: Trees (abstract) 5/5: Project 5 due (midnight)
5/6: Tree Implementations 5/8: Standard Template Library 5/12
5/13: Final exam review 5/15: No Class 5/19