Course Home | Course Policies | Homework | Lab Open Hours | Programming | Labs | Schedule & Lecture Notes

CS 180: Data Structures
Fall 2011
MWThF 10-10:50am in 121 Ritter

Erin Chambers
Contact Info: echambe5 - at - slu.edu
Office: 011 Ritter Hall
Office Hours: Monday 2-4pm, Thursday 9-10am


Here is this semester's tentative schedule; we will update it as the semester progresses.

Please note that lecture notes are provided as a supplement, and are NOT a substitute for attending lecture. In particular, these are not guaranteed, so expect technical difficulties to prevent them from being posted at least a few times in the semester, and plan accordingly to either take notes or get them from a friend if necessary.

Date Topic Reading Lecture Notes Code or Lab assignment
Monday, Aug. 29 Syllabus, intro to C++ Transition guide, sections 1-3 Lecture 1
Wednesday, Aug. 31 More C++ Transition guide Lecture 2
Thursday, Sept. 1 Lab 1: Compiling and running a program Lab 1
Friday, Sept. 2 More C++ Transition guide Lecture 3
Wednesday, Sept. 7 More C++ Transition guide Lecture 4
Thursday, Sept. 8 Lab 2: Copier Lab 2
Friday, Sept. 9 Classes and Objects Transition guide Lecture 5
Monday, Sept. 12 Variable Types Transition guide Lecture 6
Wednesday, Sept. 14 Pointers Transition guide Lecture 7
Thursday, Sept. 15 Lab 3: Speed Lab 3
Friday, Sept. 16 Housekeeping Functions
Enums and Structs
Transition guide Lecture 8
Monday, Sept. 19 Error Handling Transition guide Lecture 9
Wednesday, Sept. 20 Basic Lists Chapter 3.2 of Text Lecture 10 SLinkedList.h
SLinkedList.cpp
Thursday, Sept. 21 Comparing Algorithms
Big-O notation
Chapter 4 of text Lecture 11
Friday, Sept. 22 Stacks Chapter 5 of text Lecture 12
Monday, Sept. 26 Stacks Chapter 5 of text Lecture 13 ArrayStack.h
ArrayStack.cpp
Wednesday, Sept. 28 Stacks Chapter 5 of text Lecture 13 LinkedStack.h
LinkedStack.tcc
Thursday, Sept. 29 Lab 4: Symmetric Order Lab 4
Friday, Sept. 30 Queues Chapter 5 of text Lecture 14
Wednesday, Oct. 5 Queues ArrayQueue.h
Thursday, Oct. 6 Queues Lecture 14 ArrayQueue.h
Friday, Oct. 7 Review Session Chapters 1-5 of text
Monday, Oct. 10 Exam 1
Thursday, Oct. 13 Lab 5: Doubles Lab 5
Friday, Oct. 14 Wrap up of stacks and queues
Testing your code
testSLL.cpp
testLinkedStack.cpp
Wednesday, Oct. 19 Vectors Chapter 6.1 Lecture Notes Vector.h
Thursday, Oct. 20 Vectors Chapter 6.1 Lecture Notes Vector.h
testVector.cpp
Friday, Oct. 21 Lists Chapter 6.2 Lecture Notes List.h
Wednesday, Oct. 26 Lists Chapter 6.2 List.h
Thursday, Oct. 27 Lab 6: Doubles revisited Lab 6
Friday, Oct. 28 Lists Chapter 6.2 List.h
testList.cpp<
Monday, Oct. 31 Sorting Chapter 11 Lecture Notes
Wednesday, Nov. 2 Sorting
Trees
Chapter 11, 7 Lecture Notes
Thursday, Nov. 3 Lab 7: Salon Lab 6
Friday, Nov. 4 Binary Trees
Heaps
Chapter 7,8 Lecture Notes Heap.h
Monday, Nov. 7 Binary Search Trees Chapter 11 Lecture Notes
Wednesday, Nov. 9 Binary Trees Chapter 11 Lecture Notes BinaryTree.h
Thursday, Nov. 10 Binary Trees BinaryTree.h
Friday, Nov. 11 Review for midterm 2
Monday, Nov. 14 Second Midterm Exam
Wednesday, Nov. 16 Huffman Trees Chapter 12.4 Lecture Notes Extra notes on Huffman Trees
Thursday, Nov. 17 Binary Search Trees Chapter 10.1 BinaryTree.h
testBinaryTree.cpp
Friday, Nov. 18 AVL Trees Chapter 10.2 Lecture Notes
Monday, Nov. 21 AVL Trees Chapter 10.2 Lecture Notes
Monday, Nov. 28 AVL Trees
Operator++ in binary trees
Lecture Notes BinarySearchTree.h
testBST.cpp
Wednesday, Nov. 30 AVL Trees: _pivot Chapter 12.4 AVLTree.h
testAVL.cpp
Thursday, Dec. 1 Finish Search Trees Chapter 12 AVLTree.h
testAVL.cpp
Friday, Dec. 2 Hashing Chapter 9.2 Lecture Notes
Monday, Dec. 5 Hashing Chapter 9.2 Lecture Notes
Wednesday, Dec. 7 Treaps Lecture Notes Supplemental Notes