Analysis of Algorithms (Undergraduate)

Course Personnel
Instructor Teaching Assistants
Dr. Glencora Borradaile
glencora@eecs.oregonstate.edu
Scott Dejmal (SD)
dejmals@onid.orst.edu
Darren Forrest (DF)
forrestd@onid.orst.edu
Class and Office Hours Monday Tuesday Wednesday Thursday Friday
Class 8.30 - 10.00
KEC 1003
8.30 - 10.00
KEC 1003
Office Hours SD 8.45-10.15
KEC Atrium
Dr. B. 10-11
KEC 3071
DF 1-2.30
KEC Atrium
Dr. B. 10-11
KEC 3071
Weekly Schedule (subject to change) Week Reading Assignments Remarks Learning Objectives and topics
1
Jan 5/7
Ch. 0, 1.2
Comparing GCD methods?
Dr. B available to sign forms on M or after class.
Auditors/vagabonds welcome so long as seats are available.
For P1, if your graphs for Q1 do not look as expected, try a larger number of trials and/or a larger range for n.
Dr. B. repeatedly misattributed the GCD algorithm to Euler: it is due to Euclid.
Implement a recursive algorithm to solve
a simple problem.
2
Jan 12/14
1.1
(rest of Ch 1 highly recommended)
Asymptotic Notation Cheat Sheet?

(:cell Media:325-W10-P1.pdf :) P1, due Jan 12?

Ch 23 and 25 of How to Think about Algorithms (see below) recommended.
Need refreshers on limits, logarithms or other basic math background? Consider the Math Learning Center
For occasional absences (sickness, planned absences), assignments may be submitted as a pdf by email.
Define O,Θ and Ω in a rigorous way.
3
Jan 19/21
Ch. 2.1

(:cell Media:325-W10-A1.pdf :) A1, due Jan 19?

Dr. B out of town MTW.
T class taught by SD/DF.
4
Jan 26/28
Ch. 2.2, 2.3, 2.5
(2.4 and 2.6 highly recommended)
Solve simple recurrence (difference) relations.
5
Feb 2/4
Ch. 3

(:cell Media:325-W10-A2.pdf :) A2, due Feb 2?

Test Thursday: asymptotic notation and recurrence relations Compute the time complexity of poly-time and exp-time iterative and recursive algorithms.
6
Feb 9/11
Ch. 4.1 to 4.5 P2, due Feb 11? The Art of Leadership and Life after College one day conference, Feb 13. Free registration!
Proof of correctness of Dijkstra's algorithm?
Implement a divide-and-conquer algorithm to solve a problem of intermediate difficulty.
7
Feb 16/18
Ch. 5.1 and 5.2

(:cell Media:325-W10-A3.pdf :) A3, due Feb 18?

Guest lecture on Tuesday by Prof. X. Fern.
From abstract to less abstract (using data structures)?
Proof of correctness of BFS?
Prove the correctness of algorithms using induction.
8
Feb 23/25
Ch. 6.2, 6.4

(:cell Media:325-W10-A4.pdf:)A4, due Feb 25?

9
Mar 2/4
Ch. 8 Test Tuesday: induction and greedy algorithms Implement a polynomial-time heuristic algorithm to solve an NP-hard problem.
10
Mar 9/11
Ch. 8

(:cell Media:325-W10-P3.pdf:)P3, due Mar 9?

Warning: the last test and A4 may not be returned until the last class. Explain how a problem is shown to be NP-complete.
EXAM Mar 15 at 2PM Extra office hours with Dr. B.:
Fri Mar 12 10-11.30 and Mon Mar 15 9-10.30
Questions will cover the course learning objectives that don't start with "implement".
There will probably be one question on dynamic programming.
+ Course Evaluation
Assignments
Guidelines for written assignments?
15%
Programming sets
Guidelines for programming assignments?
10%
Test(s) 30%
Final
See the course grading and late policies?
45%
+ Course Resources
Required Textbook: Algorithms by Dasgupta, Papadimitriou and Vazirani
Draft version available.
On reserve in Valley, filed by call number QA9.58 .D37 2008
Secondary Textbook: How to Think about Algorithms by Edmonds
Electronic version available.

(:cellnr Media:Syllabus.pdf :) Syllabus?