CSOR 4231 05F: Homework 1

Assigned: Friday, October 7, 2005
Due: Wednesday, October 19, 2005

Required for Undergraduates: 6 of the following 9 problems
Required for Graduate Students: 7 of the following 9 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...

    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. Be sure to review the appendix on probability if you need extra background in that area.
  2. All logs are base 2 unless otherwise specified.
  3. Unless otherwise specified, all problems and exercises are from CLRS, Introduction to Algorithms, 2nd edition.


  1. Problem 7-1. Hoare Partition.
  2. Problem 7-5. Median-of-3 partition.
  3. Problem 9.2-4. Worst case performance of randomized select.
  4. Problem 13.4. Treaps. (editorial comment: This is a really cool data structure.)
  5. Problem 14-1. Point of maximum overlap.
  6. Exercise 14.1-7. More on inversions.
  7. Exercise 14.3-6. Min Gap.
  8. Augment Skip lists so that rank and select queries can be supported in O(log n) expected time. Be sure to show that your additional fields can be maintained efficiently during insertions. (You do not need to address deletions.)
  9. Exercise 15.1-4, 15.1-5. Assembly line scheduling.

Switch to: