CS 331 — Algorithms and Complexity Fall 2026

Instructional Mode: Face-to-face • Instructor: Fares Fraij • Contact: via Canvas messages
Canvas is the source of truth.
All policies, assignments, and course materials are posted in Canvas.

Sections

Unique #55215
Class: Tue/Thu 09:30 AM – 11:00 AM • ECJ 1.214
Discussion: Fri 10:00 AM – 11:00 AM • UTC 1.118
Unique #55220
Class: Tue/Thu 09:30 AM – 11:00 AM • ECJ 1.214
Discussion: Fri 12:00 PM – 1:00 PM • ECJ 1.306
Unique #55235
Class: Tue/Thu 11:00 AM – 12:30 PM • CPE 2.218
Discussion: Fri 10:00 AM – 11:00 AM • GDC 4.304
Unique #55240
Class: Tue/Thu 11:00 AM – 12:30 PM • CPE 2.218
Discussion: Fri 1:00 PM – 2:00 PM • PAR 201

Schedule

Tentative Course Schedule for CS 331, Fall 2026 (subject to change)
Date Lecture Reading Assignment
Aug 25 Syllabus, Introduction Background readings
on Canvas (Module 0)

Aug 27 Stable Marriage 1.1 1 out
Sep 01 Complexity, Undirected Graph Traversal 2.1, 2.2, 3.1, 3.2
Sep 03 Undirected/Directed Graph Traversal 3.3, 3.4, 3.5, 3.6 2 out
Sep 08 Greedy Algorithms 4.1
Sep 10 Greedy Algorithms 4.2, 4.4 3 out
Sep 15 Minimum Spanning Trees: Kruskal's, Prim's, Reverse Delete 4.5
Sep 17 Divide and Conquer 5.1
Sep 22 Test 1: covers all material up to Sep 22

Sep 24 Divide and Conquer: Merge Sort, Recurrences 5.1, Notes1, 5.4 4 out
Sep 29 Dynamic Programming 6.1, 6.2
Oct 01 Dynamic Programming: subset sum 6.4 5 out
Oct 06 Sequence alignment, Bellman-Ford shortest paths 6.6, 6.8
Oct 08 Ford-Fulkerson max-flow algorithm, Applications 7.1 6 out
Oct 13 Ford-Fulkerson max-flow algorithm, Max-flow min-cut theorem 7.1, 7.2
Oct 15 Max-flow min-cut theorem, applications 7.7
Oct 20 Polynomial Time Reduction 8.1
Oct 22 Test 2: covers material Sep 22–Oct 22

Oct 27 Polynomial Time Reduction, NP-Completeness 8.1–8.4
Oct 29 Graph Coloring 8.7 7 out
Nov 03 Approximation Algorithms 11.1
Nov 05 Approximation Algorithms 11.6 8 out
Nov 10 Approximation Algorithms, PSPACE/PSPACE-completeness 11.3, 9.1, 9.2
Nov 12 Turing Machine notes2 9 out
Nov 17 Undecidability, Halting problem notes2
Nov 19 Halting problem, Randomized algorithms, Randomized Quicksort 13.3, 13.5
Nov 24 Thanksgiving Break

Nov 26 Thanksgiving Break

Dec 01 Randomized Median Finding 13.5
Dec 03 Test 3:covers material from Oct 22 onward

Notes:

  1. Discussion of the Master method is from Introduction to Algorithms, 3rd ed. by Cormen et al., Section 4.5, pp. 93–96.
  2. Discussion of the Turing machine (undecidability and halting problem) is from Sipser, 2nd ed., parts of Section 3.1 and Chapter 4.