时间:2011-03-28 21:59:03

标签: math

Hy

如何显示以下内容: f(n)< = f(n-1)+ f(n-2)+ .. + f(1)意味着f(n)= O(2 ^ n)

我认为我们可以假设f单调递增=>

f(n)< = n * f(n-1)

2 个答案:

答案 0 :(得分:1)

可能通过归纳:f(j)< = c * 2 ^(j)对于所有j< Ñ

然后f(n)< = c(2 ^(n-2)+ 2 ^(n-3)+ ... + 2 ^(1))< = c * 2 ^(n + 1 )

我不确定c是否依赖于j,所以我们是否应该写: 然后f(n)< = c_(n-2)(2 ^(n-2)+ c_(n-3)2 ^(n-3)+ ... + c_1 2 ^(1))< = c * 2 ^(n + 1)

答案 1 :(得分:0)

你走在正确的轨道上

f(1)< = f(0)
f(2)< = f(0)+ f(1)

| F(2)| < = f(0)| 2 ^ 2 |
| F(1)| < = f(0)| 2 ^ 1 |
| F(0)| < = f(0)| 2 ^ 0 |
其中f(0)是常数

令x为常数(等于f(0))

假设| f(i)| < = x | 2 ^ i |对于所有i< = n
的值 然后f(n + 1)< = f(n)+(f(n-1)+ f(n-2)+ ... + f(0))
==> | F(N + 1)| < = | f(n)| + |(f(n-1)+ f(n-2)+ ... + f(0))|
==> | F(N + 1)| < = x | 2 ^ n | + x | 2 ^ n-1 | + x | 2 ^ n-2 | + .. + x
==> | F(N + 1)| < = x | 2 ^(n + 1)|
所以情况n意味着案例n + 1

通过归纳,声明适用于N

中的所有n

根据Big-O表示法的定义,f(x)在O(2 ^ n)