(Created page with "Category:ECE Category:QE Category:CE Category:problem solving Category:algorithms <center> <font size= 4> ECE_PhD_Qualifying_Exams|ECE Ph.D. Qualifying...") |
|||
Line 24: | Line 24: | ||
Then we have: | Then we have: | ||
− | < | + | <math>T(2^m) = 2 T(2^{\frac{m}{2}}) + \log {2^m} = 2 T(2^{\frac{m}{2}}) + m</math>. |
We denote the running time in terms of <math>m</math> is <math>S(m)</math>, so <math>S(m) = T(2^m)</math>, where <math>m = \log n</math>. | We denote the running time in terms of <math>m</math> is <math>S(m)</math>, so <math>S(m) = T(2^m)</math>, where <math>m = \log n</math>. |
Revision as of 16:46, 20 July 2017
Computer Engineering(CE)
Question 1: Algorithms
August 2013
Solution 1
First, let us change the variable. Let $ n = 2^{m} $, so equivalently, we have $ m = \log_2 n $. Thus, $ \sqrt[]{n} = 2^{\frac{m}{2}} $.
Then we have: $ T(2^m) = 2 T(2^{\frac{m}{2}}) + \log {2^m} = 2 T(2^{\frac{m}{2}}) + m $.
We denote the running time in terms of $ m $ is $ S(m) $, so $ S(m) = T(2^m) $, where $ m = \log n $. so we have $ S(m) = 2S(\frac{m}{2})+ m $.
Now this recurrence can in in the form of $ T(m) = aT(\frac{m}{b})+ f(m) $, where $ a=2 $, $ b=2 $, and $ f(m)=m $.
$ f(m) = m = \Theta(n^{\log _{b}{a}}) = \Theta(n) $. So the second case of master's theorem applies, we have $ S(k) = \Theta(k^{\log _{b}{a}} \log k) = \Theta(k \log k) $.
Replace back with $ T(2^m) =S(m) $, and $ m = \log_2 n $, we have $ T(n) = \Theta((\log n) (\log \log n)) $.
For the given recurrence, we replace n with $ 2^m $ and denote the running time as $ S(m) $. Thus,we have $ S(m) = T(2^m) = 2 T(2^{\frac{m}{2}}) + m $