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

CS 180: Data Structures, Fall 2013
Schedule and Lecture Notes


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. 26 Syllabus, intro to C++ Transition guide, sections 1-3 Lecture Notes
Wednesday, Aug. 28 Intro to C++: loops, functions, etc. Transition guide Lecture Notes
Friday, Aug. 30 Intro to C++: Input and Output, Scopes, Etc. Transition guide Lecture Notes
Wednesday, Sept. 4 Intro to C++: Classes Transition guide Lecture Notes
Friday, Sept. 6 Intro to C++: Pointers and References Transition guide Lecture Notes
Monday, Sept. 9 Intro to C++: Pointers, Classes Transition guide, sections 1-3 Lecture Notes
Wednesday, Sept. 11 Intro to C++: .h files, Housekeeping functions Transition guide Lecture Notes Sample makefile
Friday, Sept. 13 Simple Linked Lists Lecture Notes SLinkedList.h
SLinkedList.tcc
Monday, Sept. 16 Simple Linked Lists
Big-O analysis
Lecture Notes SLinkedList.h
SLinkedList.tcc
testSLL.cpp
Wednesday, Sept. 18 Stacks Description Lecture Notes
Friday, Sept. 20 Stacks None LinkedStack.h
LinkedStack.tcc
testStack.cpp
Monday, Sept. 23 Stacks, Queues Lecture Notes ArrayStack.h
ArrayStack.tcc
testStack.cpp
Wednesday, Sept. 25 Linked Queues LinkedQueue.h
Friday, Sept. 27 Array-based Queues ArrayQueue.h
testQueue.cpp
Monday, Sept. 30 Vectors Lecture Notes Vector.h
testVector.cpp
Wednesday, Oct. 2 Vectors Lecture Notes Vector.h
testVector.cpp
Friday, Oct. 4 Linked Lists Lecture Notes List.h
testList.cpp
Monday, Oct. 7 Lists List.h
testList.cpp
Wednesday, Oct. 9 Sorting Lecture Notes
Friday, Oct. 11 First midterm exam
Monday, Oct. 14 Trees
Wednesday, Oct. 16 Trees: Recursion
Friday, Oct. 18 Trees: traversals and representations
Wednesday, Oct. 23 Heaps Lecture Notes Heap.h
Thursday, Oct. 24 Heaps Heap.h
testHeap.h
Friday, Oct. 25 Binary Trees Lecture Notes BinaryTree.h
testBinaryTree.cpp
Monday, Oct. 28 Binary Trees Lecture Notes BinaryTree.h
testBinaryTree.cpp
Wednesday, Oct. 30 Binary Search Trees Binary Search tree intro BinarySearchTree.h
testBST.cpp
Friday, Nov. 1 AVL Trees AVL tree intro Lecture Notes
Monday, Nov. 4 AVL Trees
the pivot function
AVLTree.h
BinaryTree.h
Wednesday, Nov. 6 AVL Trees: removing Lecture Notes AVLTree.h
testAVL.cpp
Friday, Nov. 8 Treaps Reading Lecture Notes
Monday, Nov. 11 Huffman trees Basic overview
Section 7.4
Lecture notes
Wednesday, Nov. 13 Hashing Cool hashing demo Lecture Notes
Friday, Nov. 15 Review for Exam 2
Monday, Nov. 15 Exam 2
Wednesday, Nov. 20 Hashing Lecture Notes
Friday, Nov. 22 Hashing Theory of hashing Lecture Notes
Monday, Nov. 25 Work day
Exam review
Monday, Dec. 2 Graphs
DFS
Lecture Notes
Wednesday, Dec. 4 DFS and BFS Lecture Notes
Friday, Dec. 6 Topological sorting in graphs Lecture Notes
Monday, Dec. 9 Recap and comparison Lecture Notes