CS 325 - Analysis of Algorithms
School of Electrical Engineering and Computer Science
Oregon State University
Corvallis, OR 97331-3202
Instructor: Prasad Tadepalli
Office: 3069 Kelly Engineering Center
TAs:
Tian Liu (liuti)
Office hours: Mon 2-4, Wed 2-3, Kelley Atrium
Jing Ju (juji)
Office hours: Tues,Thurs,Fri 3-4, Kelley Atrium
Instr. Office Hrs: MWF 1:00-2:00 PM, Tu 9:00-10:00, KEC 3069
Class Time: MWF 11:00-12:00, Location: KEC 1001
E-mail: email
Class Web page: www.eecs.orst.edu/~tadepall/cs325
Required Text:
Algorithms
by Sanjoy Dasgupta, Christos Papadimitriou, and Umesh Vazirani,
ebook
The final grades are posted. Thanks for taking this class.
.
Good luck with the rest of your classes!
Answers to the final exam
Final exam preparation guide is here.
Practice problems from chapters 6--8 are
here.
Solutions to practice problems are here.
Also, please
look at the previous practice problems, their solutions,
and answers to midterm questions.
Learning Outcomes
At the completion of the course, students will be able to...
- Define big-Oh, big-Omega, and big-Theta in a rigorous way
- Compute the time complexity of polynomial-time and
exponential-time iterative and recursive algorithms
- Solve simple difference equations
- Implement a recursive algorithm to solve a simple problem
- Prove the correctness of theorems using induction
- Implement a divide-and-conquer algorithm to solve a
problem of intermediate difficulty
- Implement a polynomial-time heuristic algorithm to
solve an NP-hard problem
- Explain how a problem is shown to be NP-complete
Prerequisites:
CS 261, MTH 232.
Courses for which this is prerequisite:
CS 331, CS 420, CS 434, CS 475
Exams and Homeworks Schedule:
Your grades are posted here by
your class number.
- Midterm 1: Feb 2, 11 AM --- 20%
Syllabus: Chapters 0,1,2 except Sections 1.5 and 2.5
Preparation
Solution for the midterm
- Midterm 2: Feb 23, 11 AM --- 20%
The midterm syllabus consists of chapters 3 and 4 and the difference
equations.
Here is a set of practice problems to work out.
Here are the solutions and hints for solving the
practice problems.
Solution for the midterm 2
- Weekly Homework Assignments --- 20%
- Homework 1: Due 1/14/09
Solution
- Homework 2: Due date changed to: 1/23/09
How to measure time?
Solution
- Homework 3: Due date: 2/4/09
- Homework 4: Due date: 2/13/09
Hints
Answers
- Homework 5: Due date: 2/25/09
- Homework 6: Due date: 3/4/09
Answers
- Homework 7: Due date: 3/13/09
- In-class Quizzes --- 10%
- Quiz 1 on friday, Jan 9: Read chapter 0 and chapter 1 upto
section 1.2.3.
- Quiz 2 on friday, Jan 16: Read chapter 1 from 1.2 thru 1.4.
Please bring your laptop to the class. We will be using the
Wise
learning tool for the quiz.
- Quiz 3 on friday, Jan 30: Read chapter 2 of the book. You will
do the quiz on paper.
- Quiz 4 on friday, Feb 13: Read chapter 3 of the book. You will
do the quiz on paper.
- Quiz 5 on friday, Feb 20: Read chapter 4 of the book.
- Quiz 6 on friday, March 6: Read chapters 5 and 6 of the book.
You can skip subsections 5.4., 5.1.4., 6.5 and 6.7.
- Quiz 7 on friday, March 13: Read whatever is covered in the class
from chapter 8
- Final: March, 20'th, friday 7:30 AM, KEC 1001 --- 30%
Course contents:
- Algorithms and Complexity, Intro slides
- Numeric Algorithms
- Divide-and-Conquer Algorithms
- _______________Midterm 1______________
- Solving Difference Equations,
Dr. Cull's Slides , Dr. Cull's book excerpts
- Graph Algorithms
- Greedy Algorithms
- Dynamic Programming
- _______________Midterm 2_______________
- Linear Programming
- NP-Complete Problems
- Heuristic and Approximation Algorithms
- Review
Students with Disabilities:
Accommodations are collaborative efforts between students, faculty,
and Services for Students with Disabilities (SSD). Students with
accommodations approved through SSD are responsible for contacting the
faculty member in charge of the course prior to or during the first
week of the term to discuss accommodations. Students who believe they
are eligible for accommodations but who have not yet obtained approval
through SSD should contact SSD immediately at 737-4098.
Collaborations:
Each student is responsible for his/her own work.
Oral discussion of
class topics with your peers is encouraged, but
collaborations on homeworks and uses of material
on the web or elsewhere is strictly prohibited.
Please be warned that such transgressions will be taken
very seriously and could result in an F (fail) grade for
the course. Please refer to the
department policy on dishonesty for further details.
Prasad Tadepalli,
email