FA / EN

Analysis and Design of Algorithms

Algorithms are the engines of a great majority of systems, natural and artificial alike. This course explores a variety of algorithms and the mathematics used to reason about algorithms. This course emphasizes understanding and reasoning about algorithms, but also includes some implementation.

 

References

Introduction to Algorithms

Introduction to Algorithms (pdf, 20MB), Third Edition, MIT Press, 2009.Thomas H. CormenCharles E. LeisersonRonald L. Rivest and Clifford Stein 

About the Authors

 

Thomas H. Cormen is Professor of Computer Science and former Director of the Institute for Writing and Rhetoric at Dartmouth College.

Charles E. Leiserson is Professor of Computer Science and Engineering at the Massachusetts Institute of Technology.

Ronald L. Rivest is Andrew and Erna Viterbi Professor of Electrical Engineering and Computer Science at the Massachusetts Institute of Technology.

Clifford Stein is Professor of Industrial Engineering and Operations Research at Columbia University.

Reading More …
 1 Introduction to Algorithms (pdf, 20MB), Third Edition, MIT Press, 2009.
2 Solutions to exercises and problems of Introduction of Algorithms 
Lectures Slides
1 Lectures 0 – 10 (Introduction, Recursion Equations, Sort Algorithms, …, Greedy Algorithms)
2 Lectures 11 – 16 (MSt, Dynamic Programming, TSP, …, Hamming Code)
Homework (Assignments)
1 Assignment #1
2 Assignment #2
3 Assignment #3