**Required for Undergraduates:** 5 of the following 8 problems

**Required for Graduate Students:** 6 of the following 8 problems

**Points:** 10 pts per problem

- Please review the
homework and grading policy
outlined in the course information page.
- 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 followingProblem 01 02 03 04 05 06 07 08 09 ... Credit RC RC RC EC RC RC NA RC RC ... 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.

- 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.
- Start early, be concise but rigorous, and enjoy!

- Be sure to review any parts of Chapters 1-4 with which you are not familiar.
- All logs are base 2 unless otherwise specified.
- Unless otherwise specified, all problems and exercises are from CLRS, Introduction to Algorithms, 2nd edition.

- Problem 2-3. Horner's Rule.
- Problem 2-4. Inversions
- Problem 3-4 d,e,f,h. Big-O notation.
- Problem 4-1 a, d, h. Problem 4-4 b,g,j. Recurrences.
- Problem 4-6. VLSI Chip Testing.
- Place the following functions by order of growth, from smallest
to largest. For each adjacent pair in the list, give a proof that the
earlier one is assymptotically smaller than the second, by giving a
big-O proof.
- n
^{2} - n
^{.01} - 2
^{n} - 2
^{n/2} - log
^{8 }n - 8
^{log n } - n
- (log n)
^{ log n }

- n
- Exercise 6.1-4, 6.1-5. Heaps.
- Exercise 6.4-2. Correctness of Heapsort.

cliff@ieor.columbia.edu