我是Big Theta(Θ)运行时复杂性概念的新手,
我有以下重复关系来分析,
T(n)= 2T(n / 3)+ 5n 2 我得到Θ( 2 )
T(n)= T(n / 4)+ n 4 我得到Θ(n 4 )< /强>
请验证我的答案。
答案 0 :(得分:1)
你的答案是对的。 您可以通过应用Master Theorem解决这些问题。
链接是主要定理,
http://en.wikipedia.org/wiki/Master_theorem#Generic_form
如果 T(n)= a T(n / b)+ f(n)其中a> = 1且b> 1。 1
我们需要考虑主定理的案例3,
案例3:如果 f(n)=Θ(n c ),其中 c> log b a
然后 T(n)=Θ(n c )
首次出现
T(n)= 2T(n / 3)+ 5n 2
a = 2,b = 3且f(n)= 5 n 2
其中,f(n)=Θ(n c ),其中c = 2.
现在c&gt; log b a from 2&gt;日志<子> 3 子> 2
因此你提到的T(n)=Θ(n 2 )。
第二次重复
T(n)= T(n / 4)+ n 4
a = 1,b = 4且f(n)= n 4
其中,f(n)=Θ(n c ),其中c = 4.
现在c&gt; log b a,因为4&gt;日志<子> 4 子> 1
因此,您提到的T(n)=Θ(n 4 )。
答案 1 :(得分:0)
这些都是正确的。因为每个递推方程的第二项比第一项高得多,所以它将在第一项中占主导地位(以外行人的术语)。