据我所知,它类似于具有指数运行时间的斐波纳契数列。然而,这种递归关系有更多的分支。 T(n) = 2T(n-1) + 3T(n-2)+ 1
的渐近界是什么?
答案 0 :(得分:1)
这种类型的重复被称为:non-homogeneous recurrence relations,你必须在开始时求解均匀重复(最后没有常数的那个)。如果你有兴趣,请阅读它背后的数学。
我会告诉你一个简单的方法。只需在wolfram-alpha中输入等式即可得到:
这显然是一个指数复杂性:O(3^n)
答案 1 :(得分:0)
通常,你需要对T(0)和T(1)做一些假设,因为它们会有指数多个,它们的值可能决定T(n)的函数形式。但是在这种情况下似乎并不重要。
然后,可以通过找到它们的特征多项式来求解这种形式的递归关系。我发现了这篇文章:http://www.wikihow.com/Solve-Recurrence-Relations
我获得了根3和1的特征多项式,因此猜测形式T(n) = c_1*3^n + c_2
。特别是,T(n) = 1/2*3^n - 1/4
满足递归关系,我们可以验证这一点。
1/2*3^n - 1/4 = 2*T(n-1) + 3*T(n-2) + 1
= 2*(1/2*3^(n-1) - 1/4) + 3*(1/2*3^(n-2) - 1/4) + 1
= 3^(n-1) - 1/2 + 1/2*3^(n-1) - 3/4 + 1
= 3/2*3^(n-1) - 1/4
= 1/2*3^n - 1/4
因此它会给T(n) = Theta(3^n)
。但是,这可能不是唯一能够满足重现的函数,其他可能性也取决于您定义的值T(0)
和T(1)
,但它们都应该是O(3^n)
。