如何求解递推方程T(n)= T(n / 2)+ T(n / 4)+ \ Theta(n)?

时间:2010-10-11 14:45:24

标签: algorithm complexity-theory

如何求解递推方程

1.T(N)= T(N / 2)+ T(N / 4)+ \西塔(n)的

2.T(1)= 1

使用Big-Theta表示法给出结果

2 个答案:

答案 0 :(得分:2)

然后我们看看这个问题carfuley我们可以分析它。

让我们从示例开始,当我们探索它们时,我们可以更好地理解如何解决它们(另一个问题是如何表示我们拥有的数据,但这是一个知道如何表示数据可读的计算机专家)。 (暗示,1以下的任何东西都是1?

T(1)= 1

T(2)= 1 + 1

T(3)= T(1.5)+ 1

T(4)= T(2)+ 1

T(5)= T(2.5)+ T(1.25)

T(2.5)= T(1.25)+ 1

T(6)= T(3)+ T(1.3333)

现在,如果我们进行回合,我们可以理解1和2之间的上限可以是2的下限或1的上限。

如果你证明当你采取所有上限并得到你想要的teta时,如果你采取了你想要的所有下界teta,那么你就会证明它受到相同的teta的限制。

现在让我们检查一下teta

T(1)= 1

T(2)= 1 + 1

T(3)= T(2)+ 1 =(1 + 1)+1

T(4)= T(2)+ 1 =(1 + 1)+1

T(5)= T(3)+ T(2)=(1 + 1 + 1)+(1 + 1)

T(6)= T(3)+ T(2)=(1 + 1 + 1)+(1 + 1)

你知道它的线性吗?

你可以从这里出来吗?

这就是你如何处理这类问题。

祝你好运,

不要忘记下限分析。

答案 1 :(得分:1)

我不想直接给你答案,但我的提示是:寻找数学系列的形式:

1/2 + 1/4 + ... + 1/2^n