CS3114 Data Structures and Algorithms, Fall 2014
Calendar and Coursenotes for 11:00 Section
This page will show what we cover each day, including the course notes covered in class.
- Week 1: Course introduction; Math background; Introduce Project 1
-
Tuesday, August 26: Course intro
Handouts: Syllabus, prereq forms, consent forms, force add forms (as needed)
Sign up at the Piazza forum for the class. Most people were auto-registered, but you will need to take action if you have not used Piazza before, or if you were not on my roster at 6:00 Tuesday. Look through the Project 1 assignment spec (see Assignments page)
Please return the survey on procrastination. You should have received email notification if you were on the roster Tuesday morning.
-
Thursday, August 28: Discuss Project 1, do in-class recusion assessment
OpenDSA Assignment 1 (the exercise from Chapter 1) due by 11:00pm
-
Tuesday, August 26: Course intro
- Week 2: Project management, Math background; Algorithm Analysis
-
Tuesday, September 2: Project management, Math background
Classnotes on project management -
Thursday, September 4: Algorithm Analysis
In-class assessment activity -
Friday, September 5
OpenDSA Assignment: Read and do exercises for Chapter 2 by 11:00pm
-
Tuesday, September 2: Project management, Math background
- Week 3: Linear Structures, Binary Trees
-
Tuesday, September 9: Lists
-
Thursday, September 9: Stacks, Queues, basic binary tree notation
OpenDSA Assignment: Read and do exercises for Chapter 3 by 11:00pm
-
Tuesday, September 9: Lists
- Week 4: Binary Trees
- Tuesday, September 16: Binary tree definitions; traversals
Project 1 early bonus due date - Wednesday, September 17:
Project 1 final due date - Thursday, September 18: Binary Search Trees; Introduction to 2-3 Trees
Complete OpenDSA Assignment: Read and do exercises for Chapter 5 by 11:00pm
- Tuesday, September 16: Binary tree definitions; traversals
- Week 5: Binary Trees
- Tuesday, September 23: BST Deletion; 2-3 Trees
Complete OpenDSA Assignment: Read and do exercises for Chapter 6, Chapter 7 through BST by 11:00pm - Thursday, September 25: BST analysis; Nodes and space calculation; Composite design
- Tuesday, September 23: BST Deletion; 2-3 Trees
- Week 6: Midterm
- Tuesday, September 30: Midterm
- Thursday, October 2: Return/discuss Midterm, Project 2, Heaps
- Tuesday, September 30: Midterm
- Week 7: Sorting
- Tuesday, October 7: Insertion Sort, Bubble Sort, Selection Sort,
Exchange Sorting, Code Tuning
- Thursday, October 9: Shellsort, Quicksort, Mergesort, Heapsort
- Tuesday, October 7: Insertion Sort, Bubble Sort, Selection Sort,
Exchange Sorting, Code Tuning
- Week 8: Sorting, File Processing
- Tuesday, October 14: Binsort, Radix Sort, Sorting Lower Bounds Proof
Project 2 early bonus due date - Wednesday, October 15:
Project 2 final due date - Thursday, October 16: Introduce Project 3, Disk Drives
- Tuesday, October 14: Binsort, Radix Sort, Sorting Lower Bounds Proof
- Week 9: Buffer Pools, External Sorting
- Monday, October 20
Complete 2 OpenDSA Assignments (Heaps and Sorting) by 11pm. - Tuesday, October 21: Buffer Pools, External Sorting
- Thursday, October 23: External Sorting
- Monday, October 20
- Week 10: Hashing
- Tuesday, October 28: Hashing: Hash functions and collision resolution
- Thursday, October 30: Hashing: Cost Analysis; Quicksort optimizations
- Tuesday, October 28: Hashing: Hash functions and collision resolution
- Week 11:
- Tuesday, November 4: Huffman Coding and Tries
- Wednesday, November 5:
Project 3 early bonus due date - Thursday, November 6: Review for Midterm, Introduce Project 4
Project 3 final due date
- Tuesday, November 4: Huffman Coding and Tries
- Week 12: Midterm, Graphs
- Monday, November 10: OpenDSA assignment on Hashing due @ 11pm
- Tuesday, November 11: Midterm 2: Sorting, Hashing
- Thursday, November 13: Discuss Midterm 2, Project 4, Union/Find, Graph representations
- Week 13: Graphs
- Tuesday, November 18: Graph traversals, topological sort
- Thursday, November 19: Shortest paths algorithms, Dijkstra's algorithm, Floyd's algorithm
- Tuesday, November 18: Graph traversals, topological sort
- November 25, 27: Thanksgiving break
- Week 14: Indexing
- Tuesday, December 2: Linear Indexing; B-trees
- Thursday, December 4: B-trees
- Tuesday, December 2: Linear Indexing; B-trees
- Week 15:
- Monday, December 8: Project 4 early due date
- Tuesday, December 9: Last day of class
Project 4 due @ 11pm
- Monday, December 8: Project 4 early due date
-
Final Exam: Wednesday, December 17, 2:05-4:05 PM