CSCI 432: Advanced Algorithm Topics
Fall 2026
Schedule subject to change. Refresh webpage (or hit F5) to view current page.
Lecture
- Monday, Wednesday, Friday 3:10 - 4:00 pm in Gianforte 210
- Lectures will be videotaped and put on this website.
Instructor
Sean Yaw
- E-mail: sean.yaw (at) montana.edu (email me whenever, I'll respond as soon as I get it)
- Office: Gianforte Hall 334A
- Office Hours: Monday, Wednesday, Friday 4:00 - 5:00 pm and by appointment.
Textbook
- Introduction to Algorithms by Cormen, Leiserson, Rivest, and Stein (3rd edition).
Course Prerequisites
- CSCI 246: Discrete Structures.
- CSCI 232: Data Structures and Algorithms.
- CSCI 338: CS Theory. Strongly recommended.
Course Objectives
MSU course description: A rigorous examination of advanced algorithms and data structures. Topics include average case analysis, probabilistic algorithms, advanced graph problems and theory, distributed and parallel programming.
At the end of the course, my goal is for you to be able to:
- Given a problem, understand it and develop a clear, efficeint plan to solve it.
- Understand a broad set of algorithmic tools and have an intuition for when to apply which tools, including:
- Dynamic Programming.
- Greedy Approaches.
- Graph Representations and Algorithms.
- Linear Programming.
- Approximation Techniques.
- Understand and be able to comment on the time and space complexity of an algorithm, including being able to characterize recursive relations.
- 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
- Workshops (lowest 2 dropped) - 40% (5% each)
- Tests 1, 2, and 3 - 45% (15% each)
- Project - 15%
At the end of the semester, grades will be determined (after any curving takes place) based on your class average as follows:
- 93+: A
- 90+: A-
- 87+: B+
- 83+: B
- 80+: B-
- 77+: C+
- 73+: C
- 70+: C-
- 67+: D+
- 63+: D
- 60+: D-
- 0+: F