如何显示lg n! = Theta(n lg n),不使用斯特林公式

时间:2018-03-07 20:46:22

标签: algorithm big-o complexity-theory

我必须表明

lg n! = Theta(n lg n)

但我必须在不使用斯特林公式的情况下这样做。我知道如何用斯特林公式做到这一点,但没有它我就做不到,有人能给我一个关于如何实现这个目标的暗示吗?

2 个答案:

答案 0 :(得分:2)

你可以将两个表达式之间的阶乘“夹在中间”,这两个表达式具有相同的渐近增长。

例如:

(n/2)^(n/2) < n! < n^n

然后

log((n/2)^(n/2)) < log(n!) < log(n^n)

答案 1 :(得分:1)

考虑使用对数的属性:

  1. log(xy) = log(x) + log(y)
  2. log(x^y) = y log(x)
  3. 除了近似值:

    enter image description here

    你应该会看到一些很好的术语,然后你可以应用一个绑定。