CS 4820 — Introduction to Analysis of Algorithms
General Information
The course 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 its application for cryptography, and algorithmic techniques for intractable problems (such as identification of structured special cases, approximation algorithms, local search heuristics, and online algorithms).
Full Cornell course description (FA26)
Credits: 4
Prerequisites and Enrollment
Prerequisites: CS 2800 and CS 3110; or a minimum grade of A- in CS 2110 or CS 2112 and CS 2800.
Recorded Offerings
| Semester | Listed instructors | Course details |
|---|---|---|
| Fall 2026 | Robert Kleinberg, Sasha Golovnev | Roster / syllabus |
| Spring 2026 | Eva Tardos | Roster / syllabus |
Workload and General Advice
Student contributions have not been added yet. Consult the offering’s syllabus for assignments and assessment details.
Student Experiences
No testimonials yet.
Course information checked against Cornell’s Spring and Fall 2026 rosters on September 18, 2026. The listed semesters are verified examples, not a complete offering history.