Line 21: Line 21:
 
----
 
----
 
===Solution 1===
 
===Solution 1===
First, let us change the variable. Let <math>n = 2^{m}</math>, so equivalently, we have <math>m = \log_2 n</math>. Thus, <math>\sqrt[]{n} = 2^{\frac{m}{2}}</math>.
+
(a) First, let us change the variable. Let <math>n = 2^{m}</math>, so equivalently, we have <math>m = \log_2 n</math>. Thus, <math>\sqrt[]{n} = 2^{\frac{m}{2}}</math>.
  
 
Then we have:
 
Then we have:
Line 36: Line 36:
  
 
For the given recurrence, we replace n with <math>2^m</math> and denote the running time as <math>S(m)</math>. Thus,we have <math>S(m) = T(2^m) =  2 T(2^{\frac{m}{2}}) + m</math>  
 
For the given recurrence, we replace n with <math>2^m</math> and denote the running time as <math>S(m)</math>. Thus,we have <math>S(m) = T(2^m) =  2 T(2^{\frac{m}{2}}) + m</math>  
 +
 +
(b) <math>3^{f(n)}</math> is NOT <math>O(3^{g(n)}</math>, here is an counter example: Let <math>f(n) = n</math> and <math>g(n)=\frac{n}{2}</math>. Then </math>f(n) = O(g(n))</math>.
 +
 +
Now, <math>3^{f(n)}=3^n</math>, <math>f(3^{f(n)})=O(3^n)</math>; however, <math>O(3^{g(n)})=O(3^{\frac{n}{2}})</math>. So <math>f(3^{f(n)}) \neq O(3^{g(n)})</math>.
  
 
[[ECE-QE_CE1-2013|Back to QE CE question 1, August 2013]]
 
[[ECE-QE_CE1-2013|Back to QE CE question 1, August 2013]]
  
 
[[ECE_PhD_Qualifying_Exams|Back to ECE Qualifying Exams (QE) page]]
 
[[ECE_PhD_Qualifying_Exams|Back to ECE Qualifying Exams (QE) page]]

Revision as of 18:25, 20 July 2017


ECE Ph.D. Qualifying Exam

Computer Engineering(CE)

Question 1: Algorithms

August 2013


Solution 1

(a) 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 $

(b) $ 3^{f(n)} $ is NOT $ O(3^{g(n)} $, here is an counter example: Let $ f(n) = n $ and $ g(n)=\frac{n}{2} $. Then </math>f(n) = O(g(n))</math>.

Now, $ 3^{f(n)}=3^n $, $ f(3^{f(n)})=O(3^n) $; however, $ O(3^{g(n)})=O(3^{\frac{n}{2}}) $. So $ f(3^{f(n)}) \neq O(3^{g(n)}) $.

Back to QE CE question 1, August 2013

Back to ECE Qualifying Exams (QE) page

Alumni Liaison

Ph.D. 2007, working on developing cool imaging technologies for digital cameras, camera phones, and video surveillance cameras.

Buyue Zhang