Week | Day | Topic | Reading |
---|---|---|---|
August 24-28 | Mon |
Introduction, course administration
High Level Languages |
Syllabus
Sec. 1-3 of transition guide |
Wed | Variables and control structures |
Lecture Notes
Sections 4-6 of Transition Guide Chapter 1 of Textbook |
|
Thurs | Lab 1 | ||
Fri | File I/O, Classes |
Lecture Notes
Sections 6-7 of Transition Guide |
|
August 31-September 4 | Mon |
Classes
Value and Reference Variables |
Lecture Notes
Sec. 7 of transition guide Section 1.5 of the textbook |
Wed | Pointers |
Lecture Notes
Section 1.5 of textbook |
|
Thurs | Lab 2 | ||
Fri |
Structs and enums
Larger projects and makefiles |
Lecture Notes
Section 1.6 of the textbook CreditCard.h CreditCard.cpp TestCard.cpp makefile |
|
September 7-11 | Mon | No class - Labor Day | |
Wed | Analysis of Algorithms |
Lecture Notes
Chapter 3 |
|
Thurs | Lab 3 | ||
Fri |
Templates and Error Handling
Stacks |
Lecture Notes
Chapter 2.3-2.4 |
|
September 14-18 | Mon | Stacks | Lecture Notes
Array based stack implementation Section 4.2 of text |
Wed | Queues |
Lecture Notes
Section 4.3 of text |
|
Thurs | Lab 4 | ||
Fri |
Queues
Linked lists |
Lecture Notes
Array based queue implementation Chapter 5.3-5.4 |
|
September 21-25 | Mon | Review Session | |
Wed | Lab 4 | ||
Thurs | Exam I | material up through beginning of queues | |
Fri | Linked Lists |
Lecture Notes
Chapter 4.4.1-4.4.2 |
|
September 28-October 2 | Mon | Stacks based on linked lists | Lecture Notes
Linked Stack code Section 4.4.2 of text |
Wed | End of linked stacks
Linked Queues |
Lecture Notes
Linked queue code Section 4.4.2-4.4.3 |
|
Thurs | No class | (Lab canceled due to illness) | |
Fri | Double ended queues (deque) | Ch. 4.5 in text | |
October 5-9 | Mon | No class due to illness | |
Wed | Lab 5 | ||
Thurs | Vectors | Ch. 5.1
Our vector class |
|
Fri | Midterm review | ||
October 12-16 | Mon |
Aymptotic Analysis
Extendible arrays in Vectors |
Ch. 5.1.3
Lecture Notes |
Wed | Finish vector code | Ch. 5.1
Our vector class |
|
Thurs | Lab 6 | ||
Fri | Lists | Ch. 5.2 | |
October 19-23 | Mon | No class - fall break | |
Wed | Lists
Iterators |
Ch. 5.2
Our list class |
|
Thurs | Lab 7 | ||
Fri | Finish lists and Iterators | Ch. 5.2
Our (partial!) list class Full pdf of list class |
|
October 26-30 | Mon | Sorting a list | Chapter 10 of text
Code for sorting |
Wed | Intro to trees | Ch. 6.1-6.2
Lecture Notes |
|
Thurs | Lab 8 | ||
Fri | Tree algorithms | Ch. 6.3 - 6.4
Lecture Notes |
|
November 2-6 | Mon | Heaps | Chapter 7.3
Lecture Notes Heap.h |
Wed | Binary Tree code | BinaryTree.h | |
Thurs | Lab 9 | ||
Fri | More with binary trees | ||
November 9-13 | Mon | Binary Search Trees | Chapter 9.1
Lecture Notes |
Wed | Review Session | ||
Thurs | Midterm 2 | ||
Fri | AVL Trees | Capter 9.2
Lecture Notes |
|
November 16-20 | Mon |
AVL Trees
Treaps |
Chapter 9.2
Lecture Notes Some extra treap notes |
Wed | Treap code | ||
Thurs | Hash Tables - part 1 | Lecture Notes | |
Fri | Hash Tables - part 2 | Lecture Notes | |
November 23-27 | Mon | Hash Tables part 3 | Lecture Notes + |
Wed | No class | ||
Thurs | Happy Thanksgiving! | ||
Fri | No class | ||
November 30 - December 4 | Mon |
Intro to last program
Huffman codes |
Lecture Notes + |
Wed | Huffman codes | Lecture Notes | |
Thurs | Work day for last program | ||
Fri |