CS 4310 (Fall 2009)

 
   

Design and Analysis of Algorithms

 

[ home ] [ syllabus ] [ class policy ] [ references ] [ projects ] [ assignments ]

 

  

 
Instructor
Dr. Elise de Doncker
B-240 CEAS
Phone: (269) 276-3102 (office), 276-3101 (Dept. office)
e-mail: elise.dedoncker@wmich.edu

Office hours
MW 13:00 - 14:00 or by appointment

Texts
Required:
Introduction to Algorithms, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein, 2nd edition, McGraw Hill 2004.

Recommended:
Computer Algorithms/ C++, E. Horowitz, S. Sahni and B. Rajasekaran
Algorithmics, G. Brassard and P. Bratley

Course content
The course will introduce the students to the main algorithm paradigms or classes: divide & conquer, the greedy method, dynamic programming, backtracking, and branch-and-bound techniques.

Tools needed to allow for proper performance analysis of the algorithms will be covered initially (asymptotic notation, time and space complexity, solving of recurrence relations - the latter using, e.g., expansion or the characteristic equation of the recurrence relation).

Within each of the paradigms, algorithms will be studied to solve typical problems, such as:
Divide & Conquer: quicksort, merge sort, selection, Strassen's matrix multiplication;
Greedy Method: "fractional" knapsack problem, min. cost spanning trees, optimal merge patterns (applied to Huffman codes), single source shortest paths;
Dynamic Programming: all pairs shortest paths, 0/1 knapsack, traveling salesman (TSP);
Backtracking: n-queens problem, Hamiltonian cycles;
Branch-and-bound: job scheduling, TSP.

NP-completeness will be introduced. Some advanced data structures such as B-trees will be covered.

Prerequisites
CS 3310

Evaluation
The final grade will be determined on the basis of: 3 Tests (tentatively on: 9/28, 10/26, 11/23) and a Final Exam (on 12/16, 8:00-10:00 am), for total of 55% of the grade, Assignments and miscellaneous (for 45%), and using the following grading scale:
    A: 92.0 - 100.0,  BA: 88.0 -  91.9,  B: 82.0 -  87.9,  CB: 78.0 -  81.9,  C: 72.0 -  77.9,  DC: 68.0 -  71.9,  D: 60.0 -  67.9,  E:  below  60.0.
Problems with class attendance may lead to a failing grade.

Academic Integrity Policies
You are responsible for making yourself aware of and understanding the policies and procedures in the Undergraduate Catalog (pp. 271-272) that pertain to Academic Integrity. These policies include cheating, fabrication, falsification and forgery, multiple submission, plagiarism, complicity and computer misuse. If there is reason to believe you have been involved in academic dishonesty, you will be referred to the Office of Student Judicial Affairs. You will be given the opportunity to review the charge(s). If you believe you are not responsible, you will have the opportunity for a hearing. You should consult with me if you are uncertain about an issue of academic honesty prior to the submission of an assignment or test.

Link: Exam review questions

[ home ] [ syllabus ] [ class policy ] [ references ] [ projects ] [ assignments ]