Design & Analysis of Algorithms
Overview
DAA reconciles Data Structures & Algorithms with the Theory of Computation. In this course, you will learn to systematically create and analyze algorithms of your own making and set boundaries on its running time using the notion of Complexity Classes
. The course also covers various algorithm design & problem solving strategies such as Divide & Conquer
, Dynamic Programming
& Approximation Algorithms
.
Use CLRS along with the supplementary video material. The polynomial reductions are also present in the Text. For additional information on reductions, refer to the TOC textbook. The coursera course by Tim Roughgarden is recommended.
Navigation
Prerequisites
This course has the following prerequisites.
Textbooks
Title
Author(s)
Edition
Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest & Clifford Stein
3rd (2009)
Antti Laaksonen
Draft (2017)
Michael T. Goodrich & Roberto Tamassia
1st (2015)
Kleinberg & Tardos
1st (2006)
Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest & Clifford Stein
3rd (2009)
Tim Roughgarden
2017
Tim Roughgarden
2017
Skiena
2nd (2008)
Anany Levitin
3rd (2012)
Richard Neopolitan
5th (2015)
Code
Videos
Websites
Apps
Last updated