CS 583 Fall 2009
Analysis of Algorithms (Graduate Course)
08/30/09: Lecture notes will be posted on this website after each class.
In this course, a thorough examination of several wellknown techniques that are used for the design and analysis of algorithms will be covered. Topics to be covered include theoretical measures of algorithm complexity, sorting and selection algorithms, greedy algorithms, divide and conquer techniques, dynamic programming, graph algorithms, search strategies, and an introduction to the theory of NPcompleteness. Additional topics may be covered if time permits. Students are expected to have taken prior undergraduate courses in data structures, as well as calculus and discrete mathematics.
Prerequisites:
CS 310 and CS 330 Calculus (MATH 113, 114, 213) and MATH 125. Please contact with the instructor if you are not sure.
Introduction to Algorithms by T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, The McGrawHill Companies, 2nd Edition (2001) , or 3rd Edition (2009)
Algorithm Design by Jon Kleinberg and Eva Tardos, Pearson Education, Inc. (2006). (You can find the sample chapters on the webpage.)
Combinatorial Optimization: Algorithms and Complexity by C. H. Papadimitriou and K. Steiglitz, Englewood Cliffs, Prentice Hall, c1982, Reprinted by Dover Books, 1998
Lectures  Dates  Topics  Lecture Notes  Scopes  Notes 
1  September 1 

Appendix, CLRS 2, CLRS 3 

2  September 8 

CLRS 4 
Assignment 1 released  
3  September 15 


CLRS 5, 11  
4  September 22 

CLRS 6, 7 
Assignment 2 released Assignment 1 due 

5  September 29 

CLRS 8, 9 


6  October 6 

CLRS 12, Review 
Assignment 2 due  
October 13 


Cancelled due to Columbus Day 

7  October 20  Midterm exam (7:30pm  10:00pm)  
8  October 27  CLRS 15, 16 
Assignment 3 released 

9  November 3  CLRS 17, 19  
10  November 10 


CLRS 22 
Assignment 4 released Assignment 3 due 
11  November 17 

CLRS 23 


12  November 24  CLRS 24, 25 
Assignment 5 released Assignment 4 due 

13  December 1 

CLRS 26 

14  December 8 


CLRS 34, Review 
Assignment 5 due 
15  December 15 
Final exam (7:30pm  10:00pm) 
Tentative Grading:
Midterm Exam (30%)
Final Exam (30%)
Assignments (40%)
Topics Covered:
Function
growth: O, theta, omega notation

CLRS 3

Recurrence
relations

CLRS 4

Probabilistic
analysis; randomized algorithms

CLRS 5

Amortized
analysis

CLRS 17

Dynamic
programming

CLRS 15

Greedy algorithms

CLRS 16.13

Sorting
heapsort, quicksort, mergesort

CLRS 2,
6, 7

Noncomparisonbased

CLRS 8

Selection/order
statistics

CLRS 9

Data structures
balanced binary search trees

CLRS 12,
13

Hash tables

CLRS 11

Heaps /
priority queues

CLRS 6.5,
20

Graph algorithms:
BFS/DFS

CLRS 22

Minimum
spanning tree

CLRS 23

Shortest
paths

CLRS 24,
25

Maximum
flow

CLRS 26.13

Time Complexity,
NPComplete

CLRS 34

The integrity of the University community is affected by the individual choices made by each of us. GMU has an Honor Code with clear guidelines regarding academic integrity. Three fundamental and rather simple principles to follow at all times are that: (1) all work submitted be your own; (2) when using the work or ideas of others, including fellow students, give full credit through accurate citations; and (3) if you are uncertain about the ground rules on a particular assignment, ask for clarification. No grade is important enough to justify academic misconduct.
Plagiarism means using the exact words, opinions, or factual information from another person without giving the person credit. Writers give credit through accepted documentation styles, such as parenthetical citation, footnotes, or endnotes. Paraphrased material must also be cited, using MLA or APA format. A simple listing of books or articles is not sufficient. Plagiarism is the equivalent of intellectual robbery and cannot be tolerated in the academic setting. If you have any doubts about what constitutes plagiarism, please see me.
Disability Statement:
If you have a learning or physical difference that may affect your academic work, you will need to furnish appropriate documentation to the Disability Resource Center. If you qualify for accommodation, the DRC staff will give you a form detailing appropriate accommodations for your instructor.
In addition to providing your professors with the appropriate form, please take the initiative to discuss accommodation with them at the beginning of the semester and as needed during the term. Because of the range of learning differences, faculty members need to learn from you the most effective ways to assist you. If you have contacted the Disability Resource Center and are waiting to hear from a counselor, please tell me.