Saint Louis University |
Computer Science 180
|
Dept. of Math & Computer Science |
Also note: For each lecture, we denote both a topic as well as the associated reading in the textbook. The live link on the 'topic' leads to a page of my personal notes for that lecture. Those personal notes are not nearly as complete or polished as the associated readings from the text. In truth, they exist mostly to provide a brief outline of the day's lecture. Students are expected to read the associated sections of the text. In cases where my notes include material which is not explicitly in the text, I will add the word "notes" to the explicit reading list.
Week | Day | Topic | Reading |
---|---|---|---|
Aug 25-Aug 29 | Mon | Introduction, Course Overview | syllabus |
Wed | Beginning of Transition to C++ |
our Transition Guide
Chapter P of text |
|
Thur |
Transition Guide (continued);
Hands-on day with compiling/execution |
Transition Guide
Ch. P.1 of text |
|
Fri | Transition: I/O streams |
Transition Guide
Ch. P.9 of text |
|
Sep 1-Sep 5 | Mon | No Class: Labor Day | |
Wed | Transition: Data Types, Control Structures |
Transition Guide
Ch. P.3, P.4 of text |
|
Thur | Transition: Class Definitions |
Transition Guide
Ch. 1.3 of text |
|
Fri | Transition: Operator Overloading |
Transition Guide
Ch. 1.3 of text |
|
Sep 8-Sep 12 | Mon |
Transition: C++ Object Model
(value variables and assignment semantics) |
Transition Guide
Ch. P.5, P.6 of text |
Wed |
Transition: C++ Object Model
(reference variables) objectdemo |
Transition Guide
Ch. P.5, P.6 of text |
|
Thur |
Transition: C++ Object Model
(pointers) objectdemo |
Transition Guide
Ch. P.5, P.6 of text |
|
Fri | Transition: Dynamic Memory Management, Fraction Case Study | Transition Guide | |
Sep 15-Sep 19 | Mon | Overview of Container Classes; C++ arrays | Ch. P.7 |
Wed | Vector class interface; templates | Ch. 4.1 | |
Thur | Vector class (implementation) | Ch. 4.3 | |
Fri | Vector class (implementation) | Ch. 4.3 | |
Sep 22-Sep 26 | Mon | Housekeeping functions (motivation) | Ch. 4.4 |
Wed | Housekeeping functions (implementation) | Ch. 4.4 | |
Thur | Housekeeping functions (implementation) | Ch. 4.4 | |
Fri | Vectors | ||
Sep 29-Oct 3 | Mon | Efficiency of Algorithms | Ch. 2.6 |
Wed | Efficiency of Vector Operations | ||
Thur | Amortized Analysis of Vectors | ||
Fri | First Exam (includes material through Sep 26 - info ) | ||
Oct 6-Oct 10 | Mon | Stacks and Queues | Parts of Ch. 5, 6 |
Wed | Implementing a Queue with a circular array (sample code) | pp. 372-275 | |
Thur | Introduction to Linked Lists | ||
Fri | Implementing a Stack with a singly-linked list (sample code) | pp. 329-331 | |
Oct 13-Oct 17 | Mon | Housekeeping functions for our Stack implementation | |
Wed | more work on housekeeping functions | ||
Thur | Overview of STL's list interface and the iterator class. | Ch. 4.6 | |
Fri |
Experiments with vectors and lists;
monitoring clock time in C++ |
handout | |
Oct 20-Oct 24 | Mon | No Class: Fall Break | |
Wed | Using list iterators |
Ch. 4.6
our example |
|
Thur | Implementing the list class |
Ch. 4.7
sample code |
|
Fri |
Implementing the list class
(iterator and const_iterator) |
||
Oct 27-Oct 31 | Mon | (still examining list class implementation) | |
Wed | STL Containers and algorithm library | Ch. 4.9, 4.10 | |
Thur | Introduction to Trees | Ch. 8.1 | |
Fri | Tree Traversals | Ch. 8.2 | |
Nov 3-Nov 7 | Mon | Introduction to Priority Queues and Binary Heaps | Ch. 8.5 (ignoring code) |
Wed | Binary Heap operations | Ch. 8.5 (ignoring code) | |
Thur | Review for exam | ||
Fri | Second Exam (includes material through Oct. 31 ) | ||
Nov 10-Nov 14 | Mon | Vector-based implementation of Priority Queue |
Ch. 8.5
sample code |
Wed | Link-based implementation of Binary Trees | sample code (revised) | |
Thur | Binary Tree iterator | sample code (revised) | |
Fri |
Binary Search Trees
(high-level concepts) |
Ch. 8.4 (skip code) | |
Nov 17-Nov 21 | Mon |
Binary Search Tree Implementation
(Inheritance in C++) |
sample code |
Wed | Rotations and Balanced Search Trees | Ch. 11.1 | |
Thur | AVL Trees | Ch. 11.2 | |
Fri | AVL Trees (continued) | Ch. 11.2 | |
Nov 24-Nov 28 | Mon | 2-3-4 Trees and B-Trees | Ch. 11.5 |
Wed | No Class: Thanksgiving Break | ||
Thur | |||
Fri | |||
Dec 1-Dec 5 | Mon | hands-on day for asgn06 | |
Wed | STL: set, multiset, map, multimap | Ch. 9.1, 9.2 | |
Thur | Hash Tables | Ch. 9.3 | |
Fri | |||
Dec 8 | Mon | ||
Dec 15 | Mon | Final Exam (12:00-1:50) |