In this course, we study methods for designing efficient algorithms, evaluating their performance, and ways of establishing precise limits on the possible effectiveness of classes of algorithms. There will be periodic problem sets. The material in this class can only be learned by doing lots of problems, so the homework is very important. Your homework should be your own work. Collaboration on the homework problems is discouraged.
Homeworks are to be turned in at the beginning of lecture on the due date.
If you cannot complete an assignment by the due date, hand in whatever you have done in order to receive partial credit. A few problems on each homework assignment will be chosen at random to be graded. The exams are closed-book, no notes allowed. A makeup final will only be given for unexpected circumstances beyond your control, documented by a signed note from a physician or equivalent, a religious holiday, or conflict with another scheduled exam. In problem 2, the load limit W is 100.