Analysis and Design of Algorithms

12 units (3-0-9)  |  second term
Prerequisites: Ma 2, Ma 3, Ma/CS 6a, CS 21, CS 38/138, and ACM/EE/IDS 116 or CMS/ACM/IDS 113 or equivalent.
This course develops core principles for the analysis and design of algorithms. Basic material includes mathematical techniques for analyzing performance in terms of resources, such as time, space, and randomness. The course introduces the major paradigms for algorithm design, including greedy methods, divide-and-conquer, dynamic programming, linear and semidefinite programming, randomized algorithms, and online learning.
Instructor: Vidick

Please Note

The online version of the Caltech Catalog is provided as a convenience; however, the printed version is the only authoritative source of information about course offerings, option requirements, graduation requirements, and other important topics.