Curriculum / DescriptionsCOMP_SCI 336: Design & Analysis of Algorithms
VIEW ALL COURSE TIMES AND SESSIONS
Prerequisites
COMP_SCI 212 and COMP_SCI 214 or Graduate (MS or Ph.D) student standingDescription
Algorithm design and analysis is fundamental to all areas of computer science and gives a rigorous framework for the study optimization. This course provides an introduction to algorithm design through a survey of the common algorithm design paradigms of greedy optimization, divide and conquer, dynamic programming, network flows, reductions, and randomized algorithms. Important themes that will be developed in the course include the algorithmic abstraction-design-analysis process and computational tractability (e.g., NP-completeness).
- This course fulfills the Theory Breadth & Technical Elective requirement.
REQUIRED TEXT: 'Algorithm Design by Kleinberg', Jon, Tardos, Éva [Addison-Wesley, 2005] (Hardcover) by Kleinberg
COURSE INSTRUCTOR: Prof. Konstantin Makarychev or Prof. Jason Hartline or Prof. Dmitrii Avdiukhin or Prof. Abhratanu Dutta
COURSE COORDINATOR: Prof. Jason Hartline
HOMEWORK ASSIGNMENTS:
GRADES: