我评估了一种具有运行时复杂度的算法,该算法遵循以下日志系列:
(log 2 n + 1)+(log 3 n + 2)+(log 4 n + 3)+。 ... +(log n n +(n-1))
如何用“大O”表示法计算该算法的时间复杂度?
答案 0 :(得分:3)
分别考虑对数项和非对数项的总和。
在对数项中,log 2 n最大,有n-1个项。因此,总和小于(n-1)log 2 n,这是O(n log n)。
非对数项的和为(n-1)n / 2,以O(n²)为单位。
我们看到非对数项的总和占对数项的总和。因此,结果为O(n²)。