CmpE 300 Analysis of Algorithms 2019 Fall


Course Schedule: 

TWW 423 BM A2 | BM A2 | BM A2


Course Program: 

This course is intended to introduce the student to the main paradigms of algorithm analysis, methods and mathematical tools used for analyzing the performance of algorithms, the theory of parallel algorithms, as well as known sequential and parallel algorithmic solutions to frequently encountered problems.

The theory of complexity analysis, basic techniques that are commonly used in analyzing the performance, basic classes of algorithms (comparison-based, recursive, divide-and-conquer, dynamic, greedy, numerical, graph), and lower bound theory will be covered. Parallel architectures and parallel algorithms will be studied in detail. Meanwhile, mathematical tools like interpolation, master theorem, etc. will be introduced. The last part of the course will be the study of the topic of probabilistic algorithms, which is a recent but rapidly growing area of research.



Algorithms: Sequential, Parallel, and Distributed, Kenneth A.Berman, Jerome L.Paul, Thomson, 2005

Reference Books: 

·A Guide to Algorithm Design: Paradigms, Methods, and Complexity Analysis, Anne Benoit, Yves Robert, Frederic Vivien, CRC Press, 2013

·Algorithms and Complexity, Herbert S.Wilf, CRC Press, 2nd ed., 2002

·Complexity Theory : Exploring the Limits of Efficient Algorithms, Ingo Wegener, Springer, 2005

·Foundations Of Algorithms, Richard Neapolitan, Jones and Bartlett Learning, 5th ed., 2014

·Introduction to the Design and Analysis of Algorithms, Anany Levitin, Addison Wesley, 2003

·The Algorithm Design Manual, Steven S. Skiena, Springer, 2nd ed., 2008


Contact us

Department of Computer Engineering, Boğaziçi University,
34342 Bebek, Istanbul, Turkey

  • Phone: +90 212 359 45 23/24
  • Fax: +90 212 2872461

Connect with us

We're on Social Networks. Follow us & get in touch.