Spring 2011 CS 410/584 Algorithm Design & Analysis

This document is stored at www.cs.pdx.edu/~maier/cs584

Announcements (last updated 6 June 2011, 12:25p):

·        HW 5 Key on line

·        Lecture 10 w/ ink on line

·        Test 2 info on line

·        Sample Exam 2 on line

·        Quiz Key 9 on line



David Maier maier at cs dot pdx dot edu, 115-14 FAB. Note: When sending email to me directly, please put ‘cs584’ at the beginning of the subject line.

Class Meeting

Tuesday, Thursday 10:00 – 11:50 AM, FAB 150

Office Hours

Tuesday, 2:00 – 3:00 PM, or by appointment


Steve Coward

TA Offices Hours

Tuesday, noon – 1:30 PM, CS Fishbowl Area

Tentative Weekly Schedule

[This schedule is subject to change]

Quizzes on Tuesdays, Assignments due Thursdays




Reading (will be refined) 

Slides; Quizzes (Tuesdays)

Due (Thursdays)


Mar 29, 31

Introduction; Review of Order Notation, Sorting

Chs. 1-14;

Lecture 1
Lecture 1 w/ink



Apr 5, 7

Dynamic Programming, Greedy Algorithms

Chs. 15,16.1-16.3

Notes - Dynamic Programming

Lecture 2

Lecture 2 w/ink
Quiz 2

Homework 1

HW 1 Key


Apr 12, 14

Amortized Analysis, Union-Find, Graph Algorithms

Chs. 17.1-17.3, 21, 22.1 – 22.3, 22.5, 23

Lecture 3

Lecture 3 w/ink

Quiz 3

Homework 2 

HW 2 Key


Apr 19, 21

Graph Algorithms

Chs. 24.1-24.3, 25.1-25.2

Lecture 4

Quiz 4

Lecture 4 w/ink

Homework 3

HW3 Key


Apr 26, 28

Shortest Path

FIRST EXAM, 28 April

Ch. 26.1-26.2

Lecture 5

Lecture 5 w/ink

Quiz 5

Sample Exam

Exam info


May 3, 5

Maximum Flow,

Matrix Algorithms

Ch. 4.2 (Strassen’s)

Ch. 28: 28.1-2


Flow Exercise

Lecture 6

Lecture 6 w/ink

No Quiz

Project 1

Due 5 May


May 10, 12

Fast Fourier Transform, String Algorithms

Ch. 30: all

Ch. 32: 32.1, 32.3, 32.4

Lecture 7a
Lecture 7b

Quiz 6

Homework 4
HW4 Key


May 17, 19

Computational Geometry

Ch. 33: all

Lecture 8

Lecture 8 w/ink

Quiz 7


May 24, 26


Ch. 34: all

Lecture 9

Lecture 9 w/ink

Quiz 8

Project 2

Due 26 May


May 31,  June 2

Approximate Algorithms

Ch. 35: 35.1

Lecture 10

Lecture 10 w/ink

 Quiz 9

 Homework 5

HW5 Key


June 7


Second EXAM at final exam time (10:15 -12:05) on material since First EXAM

Sample Exam

Exam Info

Class E-mail

The e-mail list for this class will be cs584@cs.pdx.edu. I will set it up after the first class period. It will be used for announcements from the instructor.  You can also send questions and answers to this mail list.  You can adjust your subscription at https://mailhost.cecs.pdx.edu/mailman/listinfo/cs584.

Catalog Description

CS 410: An advanced, in-depth study of the design and analysis of algorithms. 'Topics include models of computation, sorting, data structures, graph algorithms, matrix multiplication, fast Fourier transforms, polynomial arithmetic, pattern matching, and NP-complete problems.


CS 584: An advanced in-depth study of the design and analysis of algorithms. Topics include models of computation, sorting, data structures, graph algorithms, matrix multiplication, fast Fourier transform, polynomial arithmetic, pattern matching, and NP-complete problems.


Prerequisite: CS 350 or equivalent


Introduction to Algorithms, 3rd Edition.
By Cormen, Leiserson, Rivest & Stein, McGraw Hill, 2009, ISBN 978-0-262-03384-8. 


It is okay to do the reading after the lecture where the material is covered, but you should certainly complete it before the next week’s quiz.


Homework: There are 5 homeworks, each worth 6%.  So homeworks are 30% of your grade. Homeworks are to be done individually.  Assignments are given out on THURSDAY and are due the following THURSDAY.  Make sure your homework is legible. You may seek help from the instructor and on the course mailing list, but otherwise work independently.
Quizzes: There are 8 quizzes, each worth 2%, but I drop your lowest quiz grade, so the quizzes are worth 14% of your grade.  A quiz is given on most TUESDAYs.  Each quiz covers material from the preceding week, including both lecture and reading material.  There are NO MAKEUPS FOR QUIZZES.  Quizzes will be closed book.

Projects: There will be two projects, involving programming an algorithm, experimenting with it, and a write up. Projects can be done individually, or in teams of two or three students. Each project is worth 8%, so they are worth 16% of your grade in total.

Exams: There is a first exam (20%) that covers the 1st half of the class material, and a second exam (20%) during finals week that covers the 2nd half of class material.   Exams will be open book and notes.


Graduate Students (CS584) will have additional or different questions on homework assignments, projects and exams (but not quizzes).



Students are responsible for anything that transpires during a class - therefore if you're not in a class, you should get notes from someone else (not the instructor).  

Homework projects are due at the beginning of the class period. 

Late homework and projects will not be accepted without prior approval from me. Lack of prior approval is an automatic 50% off, or 0% if that assignment has been discussed in class. 

Requests for regrading must be submitted to me in writing within one week of the time the graded assignment was made available for pickup.  You must be specific in saying why you feel your answer was incorrectly graded or deserves additional credit. 

Makeup exams will not be given except in cases of severe medical or family emergencies.  If an emergency arises and you are going to miss an exam, contact me BEFORE the exam to arrange for a special circumstance. 

Students with disabilities who are in need of academic accommodations should contact me as soon as possible to arrange needed supports.  Students are also encouraged to contact the Disability Resource Center (DRC) for additional information on  support services and available accommodations at 503/725-4240 or 503 725-4150.

Academic Integrity

[Excerpt from the 2010-2011 PSU Catalog, page 34]
The policies of the University governing the rights, freedoms, responsibilities and con­duct of students are set forth in the Portland State University Code of Student Conduct and Responsibility which has been issued by the president under authority of the Administrative Rules of the Oregon State Board of Higher Education. Students may consult these documents by visiting our website at: http://www.pdx.edu/dos/codeofconduct. Observance of these rules, policies, and procedures helps the University to oper­ate in a climate of free inquiry and expres­sion and assists it in protecting its academic environment and educational purpose.

Academic honesty: The policy governing academic honesty is part of the Code of Student Conduct and Responsibility. Academic honesty is a cor­nerstone of any meaningful education and a reflection of each student's maturity and integrity. The Code of Student Conduct and Responsibility, which applies to all students, prohibits all forms of academic cheating, fraud, and dishonesty. These acts include, but are not limited to: plagiarism, buying and selling of course assignments and research papers, performing academic assignments (including tests and examina­tions) for other persons, unauthorized dis­closure and receipt of academic information, and other practices commonly understood to be academically dishonest.