所以我知道f(n)=n^n
与g(n)=n!
相比增长更快,t(n)=2^n
增长更少
但我找不到任何与n具有相同顺序的函数!并不是一个因子函数
我们有这样一个函数,它是Θ(n!)而不是阶乘?如果我们确实有这样的功能,你能提一下吗?
答案 0 :(得分:4)
是的 - n!
中最着名的asymptotic equivalent之一是Stirling's approximation,即:
(1) n! ~ sqrt(2.pi.n).(n/e)^n
请注意使用等效 强而不是Θ关系。前者暗示后者:
(2) f(n) ~ g(n) => f(n) = Θ(g(n))
用(1)和(2)得到:
n! = Θ(sqrt(2.pi.n).(n/e)^n)
由于你要求的是Θ近似而不是等价,你可以创建任意数量的函数,例如乘以2 - sin(n)
(这不是特别有用!):
n! = Θ((2 - sin(n)).sqrt(2.pi.n).(n/e)^n)
答案 1 :(得分:1)
一个简单的例子是计算数组的所有可能的排列:
总共有n(n - 1)(n - 2)... = n!排列(如果元素是唯一的或标记的)。
答案 2 :(得分:-1)
查看Double Factorial并尝试比较它们。