Schedule (Fall 2020)
Week 1
- Introduction to Analysis of Algorithms [Lecture] - Sep 10
- Introduction to CSC 212, IDE Setup [Lab]
Week 2
- Computational Cost [Lecture] - Sep 15
- Big-Oh Notation [Lecture] - Sep 17
- Timing Algorithms [Lab]
- Assignment 1 (due 11:59p) [Assignment] - Sep 18
Week 3
- Basic Sorts (Analysis) [Lecture] - Sep 22
- Dynamic Arrays [Lecture] - Sep 24
- Basic Sorts (Implementation) [Lab]
Week 4
- Linked Lists I [Lecture] - Sep 29
- Linked Lists II - Oct 1
- Pointers and Linked Lists [Lab]
- Assignment 2 (due 11:59p) [Assignment] - Oct 2
Week 5
- Stacks and Queues [Lecture] - Oct 6
- Binary Search [Lecture] - Oct 8
- Stacks and the STL [Lab]
Week 6
- Analyzing Recursive Algorithms - Oct 13
- Recurrences [Lecture] - Oct 15
- Recursive Algorithms [Lab]
- Assignment 3 (due 11:59p) [Assignment] - Oct 18
Week 7
- Mergesort [Lecture] - Oct 20
- Quicksort [Lecture] - Oct 22
- Recursive Backtracking [Lab]
Week 8
- Midterm Exam (weeks 1 to 7) - Oct 27
- Priority Queues and Heaps [Lecture] - Oct 29
- Sets and Ordered Maps (STL) [Lab]
Week 9
- Binary Search Trees I [Lecture] - Nov 5
- Implementing BSTs [Lab]
- Assignment 4 (due 11:59p) [Assignment] - Nov 6
Week 10
- Binary Search Trees II [Lecture] - Nov 10
- 2-3 Trees [Lecture] - Nov 12
Week 11
- Left-Leaning Red-Black Trees [Lecture] - Nov 17
- Left-Leaning Red-Black Trees - Nov 19
- Unordered Sets and Maps (STL) [Lab]
Week 12
Week 13
- Hash Tables II - Dec 1
- Introduction to Graphs [Lecture] - Dec 3
- Assignment 5 (due 11:59p) [Assignment] - Dec 3
- Implementing Graphs [Lab]
Week 14
- Depth-first search [Lecture] - Dec 8
- Breadth-first search - Dec 10
- Final Project Presentations [Lab]
Week 15
- Final Project Presentations [Lecture] - Dec 14
Week 16
- Final Exam 11:30a-2:30p (weeks 8 to 15) - Dec 19