The course meets 12:30--1:20 pm Monday, Wednesday, and Friday at 110 MLH (MacLean Hall).

Kasturi Varadarajan, 101D MacLean Hall, Phone: 335-0732, email:firstname-lastname@uiowa.edu.

Office hours: 2:00--3:30 pm Tuesday, 3:00--4:30 pm Thursday.

The course is about developing algorithmic intuition, and learning to communicate algorithms effectively. See Section 0.6 (Lecture 0, Section 6) of Jeff Erickson's notes for an elaboration.

We will practise the precise statement of various computational problems, think about different strategies or algorithms to solve them, reason about their correctness, evaluate these algorithms from the point of view of efficiency (usually running time), and develop a feel for the difficulty of problems and the applicability of various techniques we will learn. It is convenient to organize the course in terms of the following topics:

- Introduction
- Basic Graph Algorithms
- Greedy Algorithms and Analysis
- Recursive thinking: Divide-and-Conquer
- Recursive thinking: Dynamic Programming
- Network Flow and applications
- NP-completeness

These topics are essentially the first eight chapters of our textbook.

The grading will be based on about eight homeworks (25 percent), two in-class midterm exams (20 percent each), and a final (35 percent). One or two of the homeworks will be based on programming.

The policy on late homeworks is that you have a quota of three days for the entire semester that you may use for late submissions. So for example, there will be no penalty if you submit the third homework a day late, the fifth two days late, and the rest of the homeworks on time. Once you use up your quota of three days, any homework submitted late will not be accepted and you will get 0 points for that homework.

When you submit a homework X days late, your quota gets decreased by X irrevocably. You can only be late by an integer number of days -- if you submit 10 hours after the deadline, for example, your quota is depleted by one day.

Talal Riaz. Office Hours: 2:00--3:30 pm Monday, and 3:30--5:00 pm Wednesday, to be held in 101N MacLean Hall. Email: talal-riaz@uiowa.edu

We will keep track of what we covered each week here.

- First Day Handout
- Homework 1, due in class on Monday, September 8.
- Homework 2, due 11:59 pm on Friday, September 19. (Deadline postponed to 11:59 pm on Monday, September 22.)
- Homework 3, due in class on Friday, Oct 3. You can apply at most one of your three late days to this homework.
- Homework 4, due in class Monday, October 20.
- Homework 5, due in class Friday, October 31.
- Homework 6, due in class Monday, November 10.
- Homework 7, due 11:59 pm on Tuesday, December 2.
- Homework 8, due in class Friday, December 12.