Algorithms | Analysis of Algorithms (Recurrences) | Question 6
The running time of an algorithm is represented by the following recurrence relation:
if n <= 3 then T(n) = n else T(n) = T(n/3) + cn
Which one of the following represents the time complexity of the algorithm?
(A) (n)
(B) (n log n)
(C) (n^2)
(D) (n^2log n)
(A) A
(B) B
(C) C
(D) D
Answer: (A)
Explanation:
T(n) = cn + T(n/3) = cn + cn/3 + T(n/9) = cn + cn/3 + cn/9 + T(n/27) Taking the sum of infinite GP series. The value of T(n) will be less than this sum. T(n) <= cn(1/(1-1/3)) <= 3cn/2 or we can say cn <= T(n) <= 3cn/2 Therefore T(n) =(n)
This can also be solved using Master Theorem for solving recurrences. The given expression lies in Case 3 of the theorem.
Quiz of this Question
Please Login to comment...