Course description

Develops techniques used in the design and analysis of algorithms, with an emphasis on problems arising in computing applications. Example applications are drawn from systems and networks, artificial intelligence, computer vision, data mining, and computational biology. This course covers four major algorithm design techniques (greedy algorithms, divide-and-conquer, dynamic programming, and network flow), undecidability and NP-completeness, and algorithmic techniques for intractable problems (including identification of structured special cases, approximation algorithms, local search heuristics, and online algorithms).

Non-Cornell students must get permission of instructor to enroll.

Prerequisites

CS 2800 and 3110.

No upcoming classes were found.

Previously offered classes

The next offering of this course is undetermined at this time.