Below is an approximation of the topics that we will cover this semester.This list is subject to change as the semester progresses though I will endevor to not change the dates when assignments are du or when you will have tests or quizzes. Note also that I will link each topic listing to a PDF file with the lectures notes for that class. I typically try to get these posted at least the night before the lecture so that you can print them out and have them during class.
Date | Topic | Readings | Due Dates |
1/16 | Introduction | ||
1/18 | Arrays and Pointers | Ch. 1.1-1.4 | |
1/21 | Structures | Ch. 1.5-1.6 | |
1/23 | Objects and Classes | Ch. 2.1-2.2 | Quiz #1 (Answers) |
1/25 | Details of Classes | Ch. 2.3-2.8 | |
1/28 | Templates (Function Templates) | Ch. 3.1-3.3 | |
1/30 | Class Templates | Ch. 3.4-3.5 | |
2/1 | More on Templates | Ch. 3.6-3.7 | Assn 1 Design |
2/4 | Stacks and Queues | Ch. 16.1 | Quiz #2 |
2/6 | Linked Lists | Ch. 17.1-17.2 | |
2/8 | Linked List Based Stacks and Queues | Ch. 16.2-16.3 | Assn 1 |
2/11 | Inhertiance | Ch. 4.1-4.2 | |
2/13 | More on Inheritance | Ch. 4.3 | |
2/15 | Details of Inheritance | Ch. 4.4-4.5 | Assn 2 Design |
2/18 | Doubly Linked Lists | Ch. 17.3 | Quiz #3 |
2/20 | Sorted Linked Lists | Ch. 17.4-17.5 | |
2/22 | Static Linked Lists | Assn 2 | |
2/25 | Binary File Access | ||
2/27 | Test 1 | ||
3/1 | Design Patterns 1 | Ch. 5.1-5.3 | Assn 3 Design |
3/4 | Design Patterns 2 | Ch. 5.4-5.6 | |
3/6 | Analysis of Algorithms | Ch. 6.1-6.5 | Quiz #4 |
3/8 | More Analysis Examples | Ch. 6.6-6.8 | Assn 3 |
3/11 | Spring Break | ||
3/13 | Spring Break | ||
3/15 | Spring Break | ||
3/18 | Recursion | Ch. 8.1-8.3 | |
3/20 | Recursion with Numerics and Divide-and-Conquer | Ch. 8.4-8.5 | |
3/22 | Basic Sorts and Shellsort | Ch. 9.1-9.4 | |
3/25 | Mergesort and Quicksort | Ch. 9.5-9.9 | Assn 4 Design |
3/27 | Trees & Binary Trees | Ch. 18.1-18.2 | Quiz #5 |
3/29 | Good Friday | ||
4/1 | Recursion and Trees | Ch. 18.3 | Assn 4 |
4/3 | Tree Traversals | Ch. 18.4 | |
4/5 | Binary Search Trees | Ch. 19.1 | |
4/8 | Analysis of BSTs and Multiway Trees | Ch. 19.2-19.3 | Assn 5 Design |
4/10 | Dynamic Programming | Ch. 8.6 | Quiz #6 |
4/12 | Backtracking | Ch. 8.7 | |
4/15 | AVL Trees | Ch. 19.4 | Assn 5 |
4/17 | More on Balanced Trees | Ch. 19.5 | |
4/19 | Priority Queues | Ch. 21.1-21.2 | |
4/22 | DDA conference - no class | Assn 6 Design | |
4/24 | Advanced Operations | Ch. 21.3-21.5 | |
4/26 | Sorting on Priority Queues | Ch. 21.6-21.7 | |
4/29 | Final Review Day | Assn 6 |