Spring 2013: Design and Analysis of Algorithms [CS 483]

General Description and Preliminary List of Topics

The design and analysis of algorithms is at the core of computer science. This course covers the principles of algorithm design and the analysis of the performance of algorithms. The emphasis is on designing correct and efficient algorithms when solving a given problem. Examples will be drawn from a variety of application scenarios.

Topics include: Measures of algorithm complexity; Graph algorithms, Greedy algorithms; Divide and conquer techniques; Dynamic programming; Network algorithms; Theory of NP-completeness.


  1. An understanding of classical problems in Computer Science
  2. An understanding of classical algorithm design and analysis strategies
  3. An ability to analyze the computability of a problem
  4. An ability to design and analyze new algorithms to solve a computational problem
  5. An ability to reason algorithmically


Quizzes: 20%
Assignments: 20%
Midterm: 30%
Final: 30%

Quizzes and exams are closed book. The lowest quiz grade will be dropped. Assignments must be performed individually. Group work is NOT allowed. Any deviation from this policy will be considered a violation of the GMU Honor Code and will not be tolerated.


If a disability or other condition affects your academic performance, make sure it's documented with the Office of Disability Services.