Θ表示几何级数的总和

时间:2012-01-20 02:18:52

标签: runtime series big-theta

我对几何系列有疑问。为什么

  

1 + c + c 2 + ... + c n =Θ(c n

当c> 1?我理解为什么如果c = 1它是Θ(n)并且如果c <1则它是Θ(1)。 1,但我只是无法弄清楚为什么它是Θ(c n )如果c> 1。

谢谢!

2 个答案:

答案 0 :(得分:4)

几何系列的前n项之和

  

c 0 + c 1 + ... + c n-1

由quantitiy

给出
  

(c n - 1)/(c - 1)

请注意,如果c> 1,然后该数量由c n -1从上面界定,并且从下面通过c n-1 -1 / c界定。因此,它是O(c n )和Ω(c n ),因此它是Θ(c n )。

希望这有帮助!

答案 1 :(得分:3)

设c&gt; 1和g(c)= 1 + c + c 2 + ... + c n

首先要意识到的是,对于某些n,我们有S(n)=(c n + 1 - 1)/(c - 1)其中S(n)是总和该系列。

所以我们有(c n + 1 - c n )/(c-1)&lt; =(c n + 1 - 1)/(c - 1)= S(n),因为c n &gt; = 1。

所以(c n + 1 - c n )/(c-1)=(c n (c-1)) /(c-1)= c n &lt; = S(n)

因此我们得到S(n)&gt; = c n

现在我们找到了下限,让我们找一下上限。

观察到S(n)=(c n + 1 - 1)/(c - 1)&lt; =(c n + 1 )/(c - 1)=((c n )c)/(c -1)。

简单地说我们对代数的看法,让y = c /(c-1)并将其代入上面的等式。

因此,S(n)&lt; = y * c n 其中 y 只是一些常数,因为 c 是!这是一个重要的观察,因为它现在只是c n 的倍数。

所以现在我们也找到了上限。

因此,我们有c n &lt; = S(n)&lt; = y * c n

因此,当c> 1时,S(n)=Θ(c n )。 1。