CSOR 4231 03F: Homework 4

Assigned: Thursday, October 16, 2003
Due: Monday, October 27, 2003

Required: 6 of the following 8 problems
Points: 10 pts per problem

General Instructions

  1. Please review the homework and grading policy outlined in the course information page.

  2. On the first page of your solution write-up, you must make explicit which problems are to be graded for "regular credit", which problems are to be graded for "extra credit", and which problems you did not attempt. Please use a table something like the following

    Problem01020304 0506070809...
    CreditRCRCRCECRC RCNARCRC...

    where "RC" is "regular credit", "EC" is "extra credit", and "NA" is "not attempted" (not applicable). Failure to do so will result in an arbitrary set of problems being graded for regular credit, no problems being graded for extra credit, and a five percent penalty assessment.

  3. You must also write down with whom you worked on the assignment. If this changes from problem to problem, then you should write down this information separately with each problem.
  4. Start early, be concise but rigorous, and enjoy!

Specific Instructions

  1. All logs are base 2 unless otherwise specified.
  2. Unless otherwise specified, all problems and exercises are from CLRS, Introduction to Algorithms, 2nd edition.
  3. For the dynamic programming problems be sure to:
  4. For the greedy problems, be sure to

Problems

  1. Exercises 15.2-1, 15.2-2. Matrix Chain
  2. Exercise 15.4-6, Longest Increasing Subsequence.
  3. Problem 15-2. Printing neatly. (insert mandatory joke about the need for the instructor to solve this problem...)
  4. Problem 15-3. Edit Distance.
  5. Exercise 16.2-2. 0-1 Knapsack.
  6. Exercise 16.2-4. Desert Driving.
  7. Problem 16-2. Scheduling to minimize Average Completion Time.
  8. In class, it was suggested that the interval scheduling problem could be solved by greedily choosing the interval which overlaps the minimum number of other intervals. Either prove that this algorithm is correct, or give a counter-example. In either case, give the most efficient possible implementation of an algorithm to compute the resulting schedule.


Switch to:


cliff@ieor.columbia.edu