Sale!

2nd Assignment CS430 Introduction to Algorithm

$30.00 $18.00

Category: You will Instantly receive a download link for .zip solution file upon Payment || To Order Original Work Click Custom Order?

Description

5/5 - (3 votes)

Problem 1 (15pts)
Do problem 13-4 (a) and (b) on page 333 in CLRS. Justify your answer.
Problem 2 (10pts)
Consider the code for Randomized-Selection on page 216 in CLRS. Support
someone carelessly implemented the code, but omitted the “-1” on line 8,
that it typing q instead of q – 1.
Does the corrupted code still work (that is, correctly find the i
th smallest
element) always, some-times, or never? Explain your answer.
1
Problem 3 (25pts)
Coins of various values are placed on the cells of an n × m chess board. Let
the upper left corner cell be (1, 1) and the lower right cell be (n, m); cell
(i, j) has coins valued at cij . A robot starts at cell (1, 1) and can move only
to the right or down on the board.
1. Give a dynamic programming algorithm expressed recursively without
memoization to determine the path the robot should follow to maximize the total value of the coins collected as the robot wanders on the
board from cell (1, 1) to cell (n, m). Analyze the time required and
give corresponding pseudocode.
2. Give the algorithm iteratively with memoization. Analyze the time
required and give corresponding pseudocode
Problem 4 (25pts)
We are given a sequence of n numbers, a1, a2, · · · , an and want to find the
longest increasing subsequence (LIS); that is, we want to find indices i1 < i2 < · · · < im such that aij < aij+1 and m is as large as possible. For example, given the sequence 5, 2, 8, 6, 3, 6, 9, 7 we have an increasing subsequence 2, 3, 6, 9 and there is no longer increasing subsequence. 1. Give a recursive dynamic programming recurrence (just give the function) for the LIS of a sequence a1, a2, · · · , an. (Hint : Let Li be the length of the LIS in a1, a2, · · · , ai , let Ai be index of the smallest possible largest element in that increasing subsequence, and let Bi be index of the second-largest element in that increasing subsequence. Express Li recursively. You may assume a dummy element a0 = −∞) 2. Give the algorithm iteratively with memoization. Analyze the time required and give corresponding pseudocode. 2