我评估了一个具有运行时复杂度的算法,该算法遵循以下日志系列:
(log2 n+1+(log3n+2+(log4n+3+…)+(logn+1))
如何计算“大O”表示法的时间复杂度?

最佳答案

分别考虑对数项和非对数项之和。
在对数项中,log2 n最大,有n-1项。因此,总和小于(n-1)log2n,这在O(n logn)中。
非对数项之和为(n-1)n/2,单位为o(n m2)。
我们看到非对数项之和支配着对数项之和。因此,得到的结果是O(n~2)。

09-16 02:18