【发布时间】:2015-09-26 01:40:27
【问题描述】:
如何计算以下函数的时间复杂度?
int Compute (int n)
{
int j = 0;
int i = 0;
while (i<=n)
{
i = 2*j + i + 1;
j++;
}
return j-1;
}
现在,我知道循环的时间复杂度为 O(n),但在这种情况下,i 的增长速度要快得多。逐次迭代我发现,对于每第 m 次迭代i = m^2。但我仍然对如何计算 Big-O 感到困惑。
【问题讨论】:
标签: time-complexity big-o