总和的总和是多少?

时间:2010-12-05 20:00:57

标签: algorithm math polynomial-math computation-theory

Σ从i = 1到n(n)(n + 1)/ 2

给定n的计算上限是多少?是O(n ^ 3)O(n ^ 2)?

示例:

n=1 , sum =1
n=2 , sum= 1+ 1+2 ,   sum = 4
n=3, sum= 1+1+2+1+2+3, sum = 10
n=4, sum = 1 + 1+2 + 1+2+3 + 1+2+3+4 = 20
n= 5, sum = 1+ 1+2 +1+2+3 +1+2+3+4 + 1+2+3+4+5 , sum = 35 
...
n=10,  sum = ..... , sum = 220 

等,那么这个计算的上限是N的函数?它是:

为O(n ^ 3)?

6 个答案:

答案 0 :(得分:4)

我认为你的意思是Σ1≤ i n i i + 1)/ 2,因为Σ1≤ i n n n < / i> + 1)/ 2只是 n ²( n + 1)/ 2,我相信你可以亲眼看到。

无论如何,当你能准确计算总和时,为什么还要忍受渐近增长率呢?

  

Σ1≤ i n i i + 1) / 2

     

=½Σ1≤ i n i ²+ i

     

=½( n n + 1)(2 + 1)/ 6 + n n + 1)/ 2)

     

= n ³/ 6 + n ²/ 2 + n / 3

OEIS将这些数字(1,4,10,20,......)称为“tetrahedral numbers”。

答案 1 :(得分:3)

是O(n ^ 3)。

要确定这是真的,您可以将其视为三角形金字塔。

alt text

答案 2 :(得分:2)

我们可以将n(n+1)/2估算为n^2。所以我们的总和为1^2 + 2^2 + ... + n^2,即n(n+1)(2n+1)/6,可以近似为n^3。所以上限是n^3

答案 3 :(得分:1)

总和的确切公式为1/6*n*(n+1)*(n+2),即O(n^3)

答案 4 :(得分:0)

是的,在k = 1,2,...,n上求和度d的一些多项式,得到n次为d + 1的多项式。由于 k(k+1) / 2在k中的度数为2,因此在n中它的和为2 + 1 = 3。

答案 5 :(得分:0)

您是要求以下总和的计算复杂度,还是要求总和的 big-O bound

第二个是O(n ^ 3),就像人们已经注意到的那样,但是对于计算总和,你只需要线性的加法和乘法量。您可以重新组合加数并将总和重写为

n*1 + (n-1)*2 + ... + 1*n

显然可以用O(n)计算总和。

哦,Gareth注意到总和有封闭形式的表达式,它在不变的时间内计算。