CS 125: Algorithms & Complexity

An accelerated introduction to theoretical computer science for students with strong mathematical preparation, to be taken in place of both Computer Science 121 and 124. Algorithm design methods, including graph algorithms, approximation algorithms, and randomized algorithms. Models of computation, computability theory, and computational complexity, including the P vs. NP question. 

Fall 2016 Offering (Prof. Jelani Nelson)

Fall 2015 Offering (Profs. Michael Mitzenmacher and Madhu Sudan)

Fall 2014 Offering (Profs. Michael Mitzenmacher and Salil Vadhan)