考虑反因子函数,f(n)= k其中k!是最大的因子< = n。我被告知逆因子函数是O(log n / log log n)。这是真的吗?或者它只是渐近增长的非常好的近似值?我尝试过的方法都非常接近log(n)/ log log(n)(分母中的一个小因子或一个小项)但不完全。
答案 0 :(得分:6)
请记住,当我们使用O(...)时,常数因子并不重要,任何比另一个术语增长更慢的术语都可以被删除。 ~
表示“与...成正比。”
如果k
很大,那么n = k! ~ k^k
。所以log n ~ k log k
,或k ~ log n / log k
或k ~ log n / log(log n / log k) = log n / (log log n - log log k)
。由于n >> k
我们可以在分母中删除该字词,因此我们k ~ log n / log log n
k = O(log n / log log n)
。
答案 1 :(得分:1)
从Stirling's Approximation开始获取ln(k!)并从那里向后工作。不为整件工作而道歉;我的大脑今晚似乎没有工作。