CSCI 532: Algorithms

Fall 2025

Date Lecture Topic Homework
21 Aug Background/Skills Check
26 Aug
28 Aug
Minimum Spanning Trees (Graph Intro)
Closest Pair (Divide and Conquer)
HW 1 (Due 16 Sep)
 
02 Sep
04 Sep
Longest Path in DAG (Dynamic Programming)
Tree Algorithms (Dynamic Programming)
 
 
09 Sep
11 Sep
Tree Algorithms (Dynamic Programming)
Flow Networks
 
 
16 Sep
18 Sep
Flow Networks
Test 1
 
 
23 Sep
25 Sep
Flow Networks (Matching)
Flow Networks (Optimality)
HW 2 (Due 21 Oct)
 
30 Sep
02 Oct
Linear Programming (Intro)
Linear Programming
 
 
07 Oct
09 Oct
Linear Programming (Simplex)
Linear Programming (Duality)
 
 
14 Oct
16 Oct
Linear Programming (ILPs)
Online Algorithms
 
 
21 Oct
23 Oct
NP Completeness
Test 2
 
 
28 Oct
30 Oct
Approximation Algorithms (APX)
Approximation Algorithms (PTAS)
HW 3 (Due 18 Nov)
 
04 Nov
06 Nov
Approximation Algorithms (Randomized)
Approximation Algorithms (Randomized Rounding)
 
 
11 Nov
13 Nov
No Class - Veteran's Day
Approximation Algorithms (Inapproximability)
 
 
18 Nov
20 Nov
FPT
Test 3
 
 
25 Nov
27 Nov
No Class - Thanksgiving
No Class - Thanksgiving
 
 
02 Dec
04 Dec
Presentations
Presentations
 
 
11 Dec Presentations, 2:00 - 3:50 pm  
Schedule subject to change. Refresh webpage (or hit F5) to view current page.

Lecture

Instructor

Sean Yaw

Textbook

Course Objectives

MSU course description: Concrete time and space complexity; combinatorial algorithms; greedy algorithms; dynamic programming; probabilistic and randomized algorithms; branch-and-bound algorithms.

At the end of the course, my goal is for you to be able to:

  1. Given a problem, understand it and develop a clear, efficient plan to solve it.
  2. Understand a broad set of algorithmic tools and have an intuition for when to apply which tools, including:
  3. Understand and be able to comment on the time and space complexity of an algorithm, including being able to characterize recursive relations.
  4. Understand what NP-Complete problems are, have an intuition for the solvability of new problems, and have familiarity with techniques to deal with NP-Complete problems.

Grading

At the end of the semester, grades will be determined (after any curving takes place) based on your class average as follows:

Project

There are two types of projects (research projects and reading projects) as described below. PhD students and thesis-based MS students need to do a research project and courses-only MS students may do either a research or reading project. For both projects, you will have to write a report (due 2 Dec) and make a presentation to the class at the end of the semester. Don't hesitate to come talk to me about project/paper ideas. You will be graded based on quality of research (if applicable), quality of report writing, and quality of presentation. Per the collaboration policy, you can work in groups of up to two people.

Late Policy

No late submissions will be accepted.

Collaboration Policy

AI Policy

You may use AI tools to help you understand concepts, guide your problem-solving process, or improve your writing. However, you are expected to fully understand all of the work you submit. If you submit work that you cannot explain or demonstrate understanding of, then you are submitting work that is not yours. In such cases, grades may be adjusted retroactively to reflect this. You will not have access to AI on the in-class tests.