我有这种情况:
W(n)= 2W(floor(n/2)) + 3
W(2)=2
我的尝试如下:
树是这样的:
W(n) = 2W(floor(n/2)) + 3
W(n/2) = 2W(floor(n/4)) + 3
W(n/4) = 2W(floor(n/8)) + 3
...
因此,T(n)= 5n - 3属于Theta(n)
我的问题是:是吗?
答案 0 :(得分:1)
好吧,如果您计算W(4)
,则会找到W(4) = 2*W(2) + 3 = 2*2 + 3 = 7
,但会5*4 - 3 = 17
,因此T(n)
的结果不正确。虽然它很接近,但你的推理(或者可能在某个其他地方)只是一个小小的滑动。
修改:具体来说,如果给出了W(1)
,您的计算就会有效,但问题中的W(2)
。要么是后者是一个错字,要么是一个身高的人。 (当然,Saeed Amiri说的话。)
答案 1 :(得分:1)
我认为它不是5n-3
,除了n是2 t ,但如果你看Master Theorem,你的θ是正确的,没有必要计算它(但它对初创公司有好处):
假设你有:
T(n)= aT(n / b)+ f(n),其中a> = 1,b> 1然后:
详细信息请参阅wiki。