Design and Analysis of Algorithms
Brown University, Fall 2026
Professor: Claire Mathieu
Head TA: Manas Korimilli
Time: Tuesdays & Thursdays 1:00 pm - 2:20 pm
Location: CIT 477
Course Description: This course will cover techniques for designing and analyzing algorithms. We will explore fundamental paradigms and advanced techniques for designing efficient algorithms and proving their correctness. Topics include the following: greedy algorithms, divide and conquer, dynamic programming, random sampling, online data structures (e.g. union-find) with amortized analysis, text compression (e.g. Lempel-Ziv), bipartite matchings, flows, linear programming (simplex), and Markov Chain Monte Carlo. Possible additional topics: clustering, beyond worst-case models, approximation algorithms, energy minimization, and stable matching.