Open In App

Algorithms | Analysis of Algorithms (Recurrences) | Question 11

Like Article
Like
Save
Share
Report
Consider the following recurrence:
gate_2006_51 Which one of the following is true?
(A) T(n) = \theta(loglogn)
(B) T(n) = \theta(logn)
(C) T(n) = \theta(sqrt(n))
(D) T(n) = \theta(n)
(A) A (B) B (C) C (D) D

Answer: (B)

Explanation: This question can be solved by first change of variable and then Master Method.
  Let n = 2^m
  T(2^m) = T(2^(m/2)) + 1
  Let T(2^m) =  S(m)
  S(m)  = 2S(m/2) + 1  
Above expression is a binary tree traversal recursion whose time complexity is \theta(m). You can also prove using Master theorem.
S(m)  = \theta(m)  
      = \theta(logn)  /* Since n = 2^m */
Now, let us go back to the original recursive function T(n)
  T(n)  = T(2^m) = S(m)
                 = \theta(Logn)




Quiz of this Question

Last Updated : 28 Jun, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads