| Week |
Period |
Topics |
Reading Assignment |
Lab |
| #1 |
Lecture 1 |
Course introduction,
Prerequisite assessment |
|
Lab 1: |
| Lecture 2 |
Review of the Microsoft Visual Studio Environment |
|
| Lecture 3 |
Review of the C++ Programming Language |
Deitel Ch. 10 |
| #2 |
Lecture 1 |
Pointers and References |
|
Lab 1 (cont.) |
| Lecture 2 |
Object-oriented Programming Basics |
|
| Lecture 3 |
Inheritance and taxonomies |
Deitel Ch. 11 |
| #3 |
Lecture 1 |
Inheritance (cont.) |
|
Lab 2: |
| Lecture 2 |
Polymorphism and dynamic behavior |
|
| Lecture 3 |
Polymorphism (cont.) |
Deitel Ch. 12 |
| #4 |
Lecture 1 |
String Processing |
|
Lab 2 (cont.) |
| Lecture 2 |
Vector Data Structure |
|
| Lecture 3 |
List Data Structure |
Section 13 |
| #5 |
Lecture 1 |
Matrix Data Structure |
|
Lab 3: |
| Lecture 2 |
Templates and the STL |
|
| Lecture 3 |
Templates and the STL (cont.) |
Deitel Ch. 14 |
| #6 |
Lecture 1 |
Recursive Procedures & Functions |
|
Lab 3 (cont.) |
| Lecture 2 |
Strings, Lists, Stacks, Queues |
|
| Lecture 3 |
Strings, Lists, Stacks, Queues (cont.) |
Deitel Ch. 15 |
| #7 |
Lecture 1 |
Sorting Algorithms (Heapsort, Quicksort, Mergesort) |
|
Lab 4: |
| Lecture 2 |
Quicksort Algorithm |
|
| Lecture 3 |
Mergesort Algorithm |
Deitel Ch. 16 |
| #8 |
Lecture 1 |
Trees & Binary Trees |
|
Lab 4 (cont.) |
| Lecture 2 |
Tree implementations |
|
| Lecture 3 |
Hashing Algorithms and Hash Tables |
Deitel Ch. 17 |
| #9 |
Lecture 1 |
Sets and Multi-sets |
|
Lab 5: |
| Lecture 2 |
Maps and Multi-maps |
|
| Lecture 3 |
Graph Representations & Algorithms |
Deitel Ch. 19 |
| #10 |
Lecture 1 |
Shortest Path problems & solutions |
|
Lab 5 (cont.) |
| Lecture 2 |
Spanning Trees |
|
| Lecture 3 |
Circuits and Cycles |
|
| #11 |
Exam week |
Final exam |
|
|