【发布时间】:2017-09-11 19:19:05
【问题描述】:
请帮我分析一下下面函数的时间复杂度。
function (n)
{
for( i = 1 ; i <= n ; i + + )
{
for( j = 1 ; j <= n ; j+ = i )
{
print( “*” ) ;
}
}
}
【问题讨论】:
-
StackOverflow 不是一个家庭作业解决网站。我们期待一些基本知识的演示或尝试解决方案。我们会帮助你,但我们不会给你答案。见meta.stackoverflow.com/a/334823/3141234
-
我投票决定将此问题作为题外话来结束,因为这是一个家庭作业问题,并未展示任何解决方案的尝试
-
n + n/2 + n/3 + n/4 + ...= ? -
正如stackoverflow.com/help/on-topic 所说:“要求家庭作业帮助的问题必须包括您迄今为止为解决问题所做的工作的总结,以及您在解决问题时遇到的困难的描述。 " (此外,大 O 分析通常是理论计算机科学,它有自己的 StackExchange 站点;我们在这里的权限仅限于实际问题)。
-
感谢您的回答。我还计算出答案是 O(nlogn) 为 (1+1/2+1/3+1/4+....+1/k) = logn 。但我是从这个link 练习这个问题的。在这里他们计算出运行时间是 O(n√n) ,这就是为什么,我很困惑。
标签: performance time-complexity asymptotic-complexity