Combinatorial Algorithms and Data Structures

CS 270 - Spring 2023 (Syllabus)

Design and analysis of efficient algorithms for combinatorial problems. Graph algorithms; linear programming; data structures; analysis of data structures; online algorithms; primal-dual methods; approximation algorithms; randomized algorithms; streaming; learning from experts; word RAM model.

This is a graduate course, though there may be room for a limited number of advanced undergraduate students satisfying the following prerequisites: mathematical maturity and comfort with algorithms (e.g. CS 170), discrete probability, and linear algebra.