-1

how to solve the recurrence equation . T(n) = T(n/2) + T(n/4) + T(n/8) + Ω(n). I can solve it if instead of Ω(n), we had (n), but now I can't solve it. please help me!

1 Answers1

2

It seems a little bit unusual to have a lower bound like that, but I believe we can use strong induction to give a lower bound on T(n). I start with an educated guess that the recursion will add a factor of O(lg n) to the Ω(n) bound, and use strong induction to verify this guess. Let's consider the case in which Ω(n) is minimised, to achieve a lower bound on the whole recurrence. That is, we assume that the function of n hiding in the Omega notation is actually Θ(n):

  Assume true for all values of n up to k:
  I.H. : T(n) < cn lg n - dn     (for n < k)

  Prove that it is true for k also:
         T(k) = T(k/2) + T(k/4) + T(k/8) + Θ(n)
   (IH)  T(k) = (k/2)lg(k/2) + (k/4)lg(k/4) + (k/8)lg(k/8) - 3dn + Θ(n)
         T(k) = ck lg k - 3dn + Θ(n)
              < ck lg k - dn     as required

Since we can choose the constant d large enough to outweigh the constant hidden in the Theta-notation. Since cn lg n is Ω(n lg n), we can give this as a lower bound on the recurrence. Owing to the Ω(n) term in the original, I believe this is the tightest asymptotic bound we can give.

soothsooth
  • 173
  • 8