CS 577: Introduction to Algorithms
Fall 2026 · UW–Madison
Study of algorithm design and analysis, from efficient problem-solving strategies to the limits of computation.
Topics
- Greedy algorithms, divide and conquer, and dynamic programming
- Flow problems and reductions
- Randomized algorithms
- Computational intractability, P vs NP, and NP-completeness
Notes
-
Dynamic Programming unit map — foundations, then Lecture 5: DP Choices and Lecture 6: Strings and Trees, with recording explanations.
-
Lecture 7: BFS and DFS — September 24.
-
Lecture 8: Bellman–Ford and Shortest Paths in DAGs — October 1.
-
Lecture 10: Dijkstra’s Algorithm — October 6.
-
Lecture 11: All-Pairs Shortest Paths and Johnson’s Algorithm — October 8.
-
Lecture 12: Minimum Spanning Trees — October 13.
-
Lecture 13: Greedy Algorithms and Interval Scheduling — October 15.
-
Lecture 14: Ford–Fulkerson and Maximum Flow — October 20.
-
Lecture 15: Applications of Maximum Flow — October 22.
-
Lecture 16: Linear Programming and Duality — October 27; enrichment.
-
Homework 2: Dynamic Programming — due September 24, 2026.
-
Homework 3: Graph Search and Shortest Paths — due October 13, 2026; includes collapsed instructor solutions.
-
Homework 4: Graph Search, MSTs, and Greedy Algorithms — due October 22, 2026; includes instructor solutions.
-
Homework 5: Flow Reductions and Ford–Fulkerson — due November 3, 2026.
-
Discussion 1: Majority Element — includes collapsed instructor answers.
-
Discussion 3: Bipartite Graph Detection with BFS — includes collapsed instructor answers.
-
Discussion 4: Shortest Paths and Spanning Trees — October 7; includes collapsed instructor answers.
Exams
-
Midterm 2: Learn from Zero — start with graph basics, then shortest paths, MSTs, greedy proofs, and flow reductions; includes worked diagrams and closed-note checkpoints.
-
Midterm 2 information, practice exam, and instructor solutions — exam logistics, coverage, 11 primary practice problems, and a separate four-problem instructor set.
-
Fall 2026 Midterm 1: actual exam with instructor solutions — answers collapsed beneath each question and subpart.
-
Midterm 1: Learn, Practice, Recall — start here for a two-day guided workbook with worked examples and self-checks.
-
Midterm 1 comprehensive review — topic reference and additional practice routes.
-
Dynamic Programming from Zero — a first worked example, from state to proof.
-
Practice and relearning — 30 topic exercises and a 6-question mixed set.
-
Midterm 1 practice exam with instructor answers — 12 Scantron questions and 13 written problems; answers collapsed for self-testing.