涉及一系列日志的Big-O证明

时间:2015-03-06 15:24:01

标签: math big-o logarithm

证明这一点 enter image description here

我把这个系列放到了总和中,但我不知道如何解决这个问题。任何帮助表示赞赏

2 个答案:

答案 0 :(得分:8)

有两个有用的数学事实可以帮到这里。首先,请注意任何x的⌈x⌉≤x+ 1。因此,

  

从i = 1到n的总和(⌈log(n / i)⌉)≤(从i = 1到n log(n / i)的总和)+ n

因此,如果我们可以证明第二个求和是O(n),那么我们就完成了。

使用日志属性,我们可以重写

  

log(n / 1)+ log(n / 2)+ ... + log(n / n)

     

= log(n n / n!)

让我们看看我们是否可以简化这一点。使用对数属性,我们得到了

  

log(n n / n!)= log(n n ) - log(n!)

     

= n log n - log(n!)

现在,我们可以使用斯特林的近似值,即

  

log(n!)= n log n - n + O(log n)

因此:

  

n log n - log(n!)

     

= n log n - n log n + n - O(log n)

     

= O(n)

所以求和总和为O(n)。

希望这有帮助!

答案 1 :(得分:2)

作为一项规则,我们知道:

enter image description here

因此:

enter image description here