CS 4040/5040: Design and Analysis of Algorithms
Fall 2015


Time and Location: Mon, Wed, Fri 12:55 – 1:50pm, Walter Hall 245
Instructor: Razvan Bunescu
Office: Stocker 341
Office Hours: Wed, Fri 9:00 – 10:00am, or by email appointment
Email: bunescu @ ohio edu

Grader: Xin Ye (xy348709 @ ohio edu)
Office: Botanical Research Center 202
Office Hours: Wed, Thu 9:30am – 4:30pm, or by email appointment

Textbook: Introduction to Algorithms by T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, 3rd ed, The MIT Press, 2009.

Prerequisites: CS3610 (Data Structures) and basic mathematical dexterity.

Course description:
This course provides an introduction to the modern study of computer algorithms. Through this course students should be able to:
  • Analyze algorithm performance using complexity measurement.
  • Master major algorithm design techniques such as divide and conquer, greedy and dynamic programming.
  • Apply above approaches to solve a variety of practical problems such as sorting and selection, graph problems, and other optimization problems.
  • Understand the theory of NP-completeness.
  • Course materials1:

    1Most of these slides are based on material kindly provided by Dr. Jundong Liu and Dr. David Juedes.

    Assignments & Projects:
    Resources: