# CS 5800 (Algorithms)

Instructor: Gene Cooperman

Spring, 2011
I have decided to re-scale the raw grades for hw2, hw3, hw4, and hw5.
The remaining grades are already within the normal range of the American
grading system.

For hw2, hw3, hw4, and hw5, if you have 90 or above
for the raw grade, your grade is unchanged. If your grade is `x`

for `x<90`

,
the formula for the re-scaled grade is: `(x+90)/2`

For the final exam, the distribution of grades was:
90 - 100: 5 ; 80 - 89: 17 ; 70 - 79: 16 ; 60 - 69: 2 ; 50 - 59: 1

(As I predicted, the mid-term exam grades were exceptionally high, and
the final exam grades were somewhat lower.)

The course syllabus is at
/course/cs5800gc/syllabus.pdf. It is
available both via the Web and via the CCIS Linux filesystem.

Please look in the course directory for the
syllabus and the latest homework assignments.

## Encyclopedic Reference of Algorithms and Data Structures:

## Topics discussed in course:

*(Please note that the online notes are often incomplete or simply
informal examples. They are intended only as a quick entry
into the the ideas of the text. Please **also* read
the textbook for a complete and rigorous proof.)
- Complexity, O(), and Recurrence Relations
(Chapter 2.2)
- Strongly Connected Components
(Chapter 3.4.2)
- Best-First Search,
Priority queues, and Binary heaps (and other Data Structures)
(Chapter 4)
- Union-Find
(Chapter 5.1.4)
- Dynamic Programming
(Chapter 6; see also
some example
solved dynamic programming problems from a course at MIT)