CS 647 Computer Algorithms
Course Syllabus -- Spring 1999

Instructor: Chris Lynch
Office: 377 Science Center
Phone: 268-2384
E-mail: clynch@clarkson.edu

New Classroom: Rowley 142

New Time of Class: T,Th 4:00-5:15

Office hours: T,Th 10:00-11:00, 2:30-4:00

Text: Introduction to Algorithms by T. H. Cormen, C. E. Leiserson, and R. L. Rivest


We will attempt to cover the following material. Quite likely, some of these topics will be covered lightly or omitted entirely, depending on time and interests of the class.

10 Order Statistics
13 Binary Search Trees
14 Red-Black Trees
15 Augmenting Data Structures
16 Dynamic Programming
17 Greedy Algorithms
18 Amortized Analysis
19 B-Trees
20 Binomial Heaps
21 Fibonacci Heaps
22 Data Structures for Disjoint Sets
23 Elementary Graph Algorithms
24 Minimum Spanning Trees
25 Single-Source Shortest Paths
26 All-Pairs Shortest Paths
27 Maximum Flow
31.2 Strassen's Algorithm for Matrix Multiplication
34 String Matching
36 NP Completeness
37 Approximation Algorithms


I will base your entire grade on homework.

The homework will consist of exercises, primarily from the text, although other exercises may also be assigned. The homework will be assigned on a weekly basis, except for those weeks when there is a holiday. In determining your final grade, your two lowest homework grades will be dropped, and the remaining ones will be weighted equally.

Homework is the best way for you to learn this subject, and with a small class, it should be possible to run the class this way. I hope this will not be abused. All work in this course should be individual effort. It is perfectly fine (and even encouraged) to discuss the homework problems with me or other students, but the work should be your own. A first time or minor infraction of this policy on a homework assignment will be penalized by a grade of 0 for that assignment. Repeated or flagrant violations will result in a grade of F for the course.