CSE 331 Fall 2026 Schedule
Future Lectures
Topics for future lectures are tentative and subject to change.
| Week | Date | Topic | Resources | Recitation | Assignments |
|---|---|---|---|---|---|
| 1 | Mon, Aug 24 | Introduction | Syllabus | No Recitation | |
| Wed, Aug 26 | Pseudocode and Tractability | KT 2.1 | HW 0 Out | ||
| Fri, Aug 28 | Algorithms and Efficiency | KT 2.2, 2.4 | |||
| 2 | Mon, Aug 31 | Stable Matching | KT 1.1 Notation | Recitation 1 | |
| Wed, Sep 2 | Gale–Shapley Algorithm | KT 1.1 Pigeonhole principle Asymptotic notation care package | HW 0 In | ||
| Fri, Sep 4 | Gale–Shapley Correctness | KT 1.1 Notation Pigeonhole principle | |||
| 3 | Mon, Sep 7 | No Class (Labor Day) | No Recitation | ||
| Wed, Sep 9 | Runtime Analysis | KT 2.3 Worst-case runtime analysis notes | HW 1 Out | ||
| Fri, Sep 11 | Notation, Definitions, and Connectivity | KT 3.1, 3.2 Graph notation Care package on trees | |||
| 4 | Mon, Sep 14 | Connectivity and Traversal | KT 3.2, 3.3 Graph notation BFS by examples | Recitation 2 | |
| Wed, Sep 16 | BFS, DFS, and Explore Runtime | KT 3.3, 3.4 Graph notation BFS by examples | HW 1 In; HW 2 Out | ||
| Fri, Sep 18 | Directed Graphs | KT 3.5, 3.6 Graph notation Care package on topological ordering | |||
| 5 | Mon, Sep 21 | Greedy Algorithms | KT 4.1, 4.2 Scheduling notation | Recitation 3 | |
| Wed, Sep 23 | Interval Scheduling | KT 4.1, 4.2 Scheduling notation Care package on minimizing maximum lateness | HW 2 In; HW 3 Out | ||
| Fri, Sep 25 | Optimal Caching | KT 4.3 | Groups Due | ||
| 6 | Mon, Sep 28 | Shortest Path Problem | KT 4.4 Shortest-path notation | Review | |
| Wed, Sep 30 | Midterm I Review | ||||
| Fri, Oct 2 | Midterm I | ||||
| 7 | Mon, Oct 5 | Dijkstra's Algorithm | KT 4.4 Shortest-path notation | Recitation 4 | |
| Wed, Oct 7 | Minimum Spanning Tree | KT 4.5, 4.6 MST notation | HW 3 In; HW 4 Out | ||
| Fri, Oct 9 | Cut Property Lemma | KT 4.5, 4.6 MST notation | |||
| 8 | Mon, Oct 12 | No Class (Fall Break) | Recitation 5 | ||
| Wed, Oct 14 | Huffman Codes | KT 4.8 | HW 4 In; HW 5 Out | ||
| Fri, Oct 16 | Divide and Conquer: Mergesort | KT 5.1 Divide-and-conquer notation | |||
| 9 | Mon, Oct 19 | Recurrence Relations | KT 5.2 Divide-and-conquer notation | Recitation 6 | |
| Wed, Oct 21 | Counting Inversions | KT 5.3 Divide-and-conquer notation | HW 5 In; HW 6 Out | ||
| Fri, Oct 23 | Multiplying Large Integers | KT 5.5 Divide-and-conquer notation Integer multiplication notes | |||
| 10 | Mon, Oct 26 | Closest Pair of Points | KT 5.4 Divide-and-conquer notation | Review | P1 & P2 Code Due |
| Wed, Oct 28 | Midterm II Review | ||||
| Fri, Oct 30 | Midterm II | ||||
| 11 | Mon, Nov 2 | Kickass Property Lemma | KT 5.4 Divide-and-conquer notation | Recitation 7 | P1 & P2 Reflection Due |
| Wed, Nov 4 | Divide and Conquer Wrap-Up | Divide-and-conquer notation | HW 6 In; HW 7 Out | ||
| Fri, Nov 6 | Dynamic Programming: Weighted Interval Scheduling | KT 6.1 Scheduling notation | |||
| 12 | Mon, Nov 9 | Recursive Algorithms | KT 6.1, 6.2 Scheduling notation | Recitation 8 | |
| Wed, Nov 11 | Iterative Algorithms | KT 6.2, 6.3 Scheduling notation | HW 7 In; HW 8 Out | ||
| Fri, Nov 13 | Subset Sum | KT 6.4 Dynamic-programming notation | |||
| 13 | Mon, Nov 16 | Knapsack | KT 6.4 Dynamic-programming notation | Recitation 9 | P3 Code Due |
| Wed, Nov 18 | Shortest Path Problem | KT 6.8 Dynamic-programming notation | |||
| Fri, Nov 20 | Bellman–Ford | KT 6.8 Dynamic-programming notation | |||
| 14 | Mon, Nov 23 | Complexity | KT 8.1–8.3 | No Recitation | P3 Reflection Due |
| Wed, Nov 25 | No Class (Thanksgiving Break) | ||||
| Fri, Nov 27 | |||||
| 15 | Mon, Nov 30 | Reductions | KT 8.4 | Review | P4 & P5 Code Due |
| Wed, Dec 2 | Circuit-SAT | KT 8.5 | HW 8 In | ||
| Fri, Dec 4 | Graph Coloring | KT 8.7 | |||
| 16 | Mon, Dec 7 | Wrap-Up | No Recitation | P4 & P5 Reflection Due |