Schedule (Fall 2025)
Lectures and Labs
Week 1 (Sep 1)
- Lab 0: Introduction to CSC 212 [slides part 1, part 2], Pre-Assessment
- Lecture: C++ Review: Memory, Pointers [slides]
Week 2 (Sep 8)
- Lecture: C++ Review: Dynamic Memory Allocation [slides]
- Lab 1: C++ Review [lab]
- Lecture: Analysis of Algorithms (part 1) [slides]
Week 3 (Sep 15)
- Lecture: Analysis of Algorithms (part 2) [slides]
- Lab 2: Comparing algorithms [lab]
- Lecture: Big-O Notation [slides]
Week 4 (Sep 22)
- Lecture: Dynamic Arrays [slides]
- Lab 3: Dynamic Arrays [lab]
- Lecture: Stacks [slides]
Week 5 (Sep 29)
- Lecture: Queues, Deques [slides]
- Lab 4: Stacks [lab]
- Lecture: Priority Queues, Binary Heaps [slides]
Week 6 (Oct 6)
- Lecture: BuildHeap, Heapsort [slides]
- Lab 5: Priority Queues [lab]
- Lecture: Linked Lists (part 1)
Week 7 (Oct 13)
- Midterm Exam 1
- Lab 6:
- Lecture: Linked Lists (part 2), Recursion
Week 8 (Oct 20)
- Lecture: Analysis of Recursive Algorithms
- Lab 7:
- Lecture: Recursive Sorting Algorithms
Week 9 (Oct 27)
- Lecture: Binary Search Trees (part 1)
- Lab 8:
- Lecture: Binary Search Trees (part 2)
Week 10 (Nov 3)
- Lecture: Balanced Trees (part 1)
- Lab 9:
- Lecture: Balanced Trees (part 2)
Week 11 (Nov 10)
Week 12 (Nov 17)
- Lecture: Hash Tables (part 1)
- Lab 11:
- Lecture: Hash Tables (part 2)
Week 13 (Nov 24)
- Lecture: Graph Representations
Week 14 (Dec 1)
- Lecture: Graph Algorithms (part 1)
- Lab 12:
- Lecture: Graph Algorithms (part 2)
Week 15 (Dec 8)
Homework Assignments
- Assignment 1 [handout], due Sep 19th, 11:59p
- Assignment 2 [gradescope], due Sep 29th, 11:59p
- Assignment 3 [handout], due Oct 6th, 11:59p
- Assignment 4 [gradescope], due Oct 12th, 11:59p
Exams
- Pre-Assessment, Sep 3
- Midterm Exam 1, Oct 14
- Midterm Exam 2, Nov 13
- Final Exam, Dec 16, 11:30-1:30pm