Ask Engineering Mathematics Expert

Consider common recurrence types in algorithm analysis: Decrease-by-One, Decrease-by-a-Constant Factor, and Divide-by-Conquer.

1. A decrease-by-one algorithm solves a problem by exploiting a relationship between a given instance of size n and a smaller instance of size n - 1. Specific examples include recursive evaluation of n! and insertion sort. The recurrence equation for finding the time efficiency of such algorithms has the following form:

T(n)= T(n - 1) + f(n),

Where function f(n) accounts for the time needed to reduce an instance to a smaller one and to extend the solution of the smaller instance to a solution of the larger instance.

Show     (a) T(n) = T(0) + ∑j=1n f(j)

For a specific function f(x), the sum + ∑j=1n f(j) can usually be either computed exactly or its order of growth ascertained.

(b)          if fin) =1,              ∑j=1n f(j) = n.

(c)           if f(n) = log n,     ∑j=1n f(j) εΘ(nlogn).

(d)          if f(n)= nk             ∑j=1n f(j) εΘ(nk+1).

2. A decrease-by-a-constant-factor algorithm solves a problem by reducing its instance of size n to an instance of size nib (b = 2 for most but not all such algorithms), solving the smaller instance recursively, and then, if necessary, extending the solution of the smaller instance to a solution of the given instance. Examples include binary search, exponentiation by squaring, Russian peasant multiplication, and the fake-coin-problem. The recurrence equation for finding the time efficiency of such algorithms has the following form:

T(n) = T(n/b) + f(n),

where b > 1 and function f(n) accounts for the time needed to reduce an instance to a smaller one and to extend the solution of the smaller instance to a solution of the larger instance. Strictly speaking, this recurrence equation is valid only for n = bk, k= 0, 1, 2,.....  For values of n that are not powers of b, there is typically some round-off, usually involving the floor and/or ceiling functions.

Show

(a) By considering n = bk k= 0, 1, 2,..... , and applying backward substitutions to this recurrence equation,

T(n) = T(1) + ∑j=1k f(bj)

For a specific function f(x), the sum ∑j=1k f(bj)  can usually be either computed exactly or its order of growth ascertained.

(b)          if f(n)= 1, ∑j=1k f(bj)  = logbn.

(c)           If f(n)= n, ∑j=1k f(bj)  = b(n-1)/b-1

3. A divide-and-conquer algorithm solves a problem by dividing its given instance into several smaller instances, solving each of them recursively, and then, if necessary, combining the solutions to the smaller instances into a solution to the given instance. Assuming that all smaller instances have the same size nib, with a of them being actually solved, we get the following recurrence valid for n = bk, k = 0, 1, 2, .....

T(n) = aT(n/b) + f(n),

where a ≥ 1, b ≥ 2, and f(n) is a function that accounts for the time spent on dividing the problem into smaller ones and combining their solutions.

Show that the following formula is the solution to this recurrence for n = bk,

T(n) = nlogba [ T(1) + ∑j=1logbn f(bj)/aj],

The order of growth of solution T(n) depends on the values of the constants a and b and the order of growth of the function f(n).

4. Use the divide-and-conquer integer multiplication algorithm to multiply the two binary integers 10011011 and 10111010.

5. Using backward substitution, find the solutions for the following relations

(a)          T(n) = 3T(n/2) + Θ(n), and

(b)          T(n) = T(n -I) + Θ(1).

6. You are given an array of n elements, and you notice that some of the elements are duplicates; that is, they appear more than once in the array. Show how to remove all duplicates from the array in time 0(n log n),

7. Here we look at an alternative algorithm based on divide-and-conquer.

(a)                                      - 2 gcd(a/2, b/2)      if a, b are even

                gcd (a, b) =          gcd(a, b/2)             if a is odd, b is even

                                          gcd((a - b)/2, b)      if a, b are odd

Show this rule is true.

(b) Give an efficient divide-and-conquer algorithm for finding greatest common divisor.

(c) How does the efficiency of your algorithm compare to Euclid's algorithm if a and b are n-bit integers? (in particular, since n might be large you cannot assume that basic arithmetic operations like addition take constant time.)

Engineering Mathematics, Engineering

  • Category:- Engineering Mathematics
  • Reference No.:- M91721688

Have any Question?


Related Questions in Engineering Mathematics

Q undirected vs directed connectivitya prove that in any

Q: Undirected vs. directed connectivity. (a) Prove that in any connected undirected graph G = (V, E) there is a vertex v ? V whose removal leaves G connected. (Hint: Consider the DFS search tree for G.) (b) Give an examp ...

All these questions should be answered in matlab 1 generate

All these questions should be answered in MATLAB !!! 1. Generate a set of 3 random patterns of dimension 12 where each value is +1 or -1.(3 random 12*12 matrix) 2. Create a 12-unit Hopfield network (a 12x12 matrix) from ...

I have these questions for a homework assignment and have

I have these questions for a homework assignment and have to show work. This works with MIPS coding language and is the class Introduction to Computer Architecture. 1. Find the 2's complement representation (in 32-bit he ...

Question 1 - many spas many componentsconsider 4 types of

Question 1 - Many spas, many components Consider 4 types of spa tub: Aqua-Spa (or FirstSpa, or P1), Hydro-Lux (or SecondSpa, or P2), ThirdSpa (or P3) and FourthSpa (or P4), with the production of products P1, ..., P4 in ...

Analytical methods for engineers assignment - calculusthis

ANALYTICAL METHODS FOR ENGINEERS ASSIGNMENT - CALCULUS This assignment assesses Outcome - Analyse and model engineering situations and solve problems using calculus. Questions - Q1. Differentiate the following functions ...

Clculus assignment -q1 find the total differential of w

CALCULUS ASSIGNMENT - Q1. Find the total differential of w = x 3 yz + xy + z + 3 at (x, y, z) = (1, 2, 3). Q2. Find the value of the double integral ∫∫ R (6x + 2y 2 )dA where R = {(x, y)| - 2 ≤ y ≤ 1, y 2 ≤ x ≤ 2 - y. Q3 ...

Numerical analysis assignment -q1 define the following

Numerical Analysis Assignment - Q1. Define the following terms: (i) Truncation error (ii) Round-off error Q2. Show that if f(x) = logx, then the condition number, c(x) = |1/logx|. Hence show that log x is ill-conditioned ...

Question what is the signed binary sum of 1011100 and

Question : What is the signed binary sum of 1011100 and 1110101 in decimal? Show all of your work. What is the hexadecimal sum of 9A88 and 4AF6 in hexadecimal and decimal? Show all of your work.

Question a signal starts at point x as it travels to point

Question : A signal starts at point X. As it travels to point Y, it loses 8 dB. At point Y, the signal is boosted by 10 bB. As the signal travels to point Z, it loses 7 dB. The dB strength of the signal at point Z is -5 ...

Show all your work not just the answerswhen you multiply 21

(SHOW ALL YOUR WORK, not just the answers) When you multiply: 21 x 68 you most likely do: 8x1 + 8x20 + 60x1 + 60x20 = 1, 428 So, there are 4 multiplications and then 3 additions. How long would it take a computer to do t ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As