如何解决T(n)= T(n-1)+ n ^ 2?

时间:2015-06-09 17:07:40

标签: algorithm iteration recurrence

见标题。我正在尝试应用此问题的方法:Easy: Solve T(n)=T(n-1)+n by Iteration Method。到目前为止,我有这个,但我不知道如何从这里开始:

T(n)= T(n-1)+ n 2

T(n-1)= T(n-2)+(n-1) 2 = T(n-2)+ n 2 - 2n + 1

T(n-2)= T(n-3)+(n-2) 2 = T(n-3)+ n 2 - 4n + 4

T(n-3)= T(n-4)+(n-3) 2 = T(n-4)+ n 2 - 6n + 9

将T(n-1),T(n-2)和T(n-3)的值代入T(n)得出:

T(n)= T(n-2)+ 2n 2 - 2n + 1

T(n)= T(n-3)+ 3n 2 - 6n + 5

T(n)= T(n-4)+ 4n 2 - 12n + 14

现在我必须找到一个模式,但我真的不知道该怎么做。我得到的是:

T(n)= T(n-k)+ kn 2 - ...... ???

2 个答案:

答案 0 :(得分:1)

我开始猜测,因为每个T(n)等于前一个加上一个正方形,所以T(n)是立方的。

写T(n)= an ^ 3 + bn ^ 2 + cn + d。

将其代入T(n)= T(n-1)+ n ^ 2并求解a,b,c。

显然T(0)= d。

答案 1 :(得分:0)

如果你自己编写的方程式合并:

T(n)=
=n^2+T(n-1)=
=n^2+(n-1)^2+T(n-2)=
=n^2+(n-1)^2+(n-2)^2+T(n-3)=
=n^2+(n-1)^2+(n-2)^2+(n-3)^2+...+2^2+1^2+T(0)=
=n(n+1)(2n+1)/6+T(0)   //based on well known formula for S(x^2, x=1..n)