gpt4 book ai didi

algorithm - 给定算法的时间复杂度是多少?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:00:02 24 4
gpt4 key购买 nike

x=0
for i=1 to ceiling(log(n))
for j=1 to i
for k=1 to 10
x=x+1

我已经把我想出的答案放在这里了:

enter image description here

我认为时间复杂度是θ(n^2 log(n)),但我不确定我的逻辑是否正确。如果能帮助我理解如何进行此类分析,我将不胜感激!

最佳答案

最外层循环将运行 ceil(log n) 次。中间循环取决于 i 的值。

因此,它的行为将是:

1st iteration of outermost-loop    - 1
2nd iteration of outermost-loop - 2
.....................................
ceil(log n) iteration of outermost-loop - ceil(log n)

最内层循环独立于其他变量,中间循环的每次迭代总是运行 10 次。

因此,网络迭代

= [1*10 + 2*10 + 3*10 + ... + ceil(log n)*10] 
= 10 * {1+2+...+ceil(log n)}
= 10 * { (ceil(log n) * ceil(log n)+1)/2} times
= 5 * [ceil(log n)]^2 + 5 * ceil(log n)
= Big-Theta {(log n)^2}
= Θ{(log n)^2}.

希望您清楚这一点。因此,您的答案不正确。

关于algorithm - 给定算法的时间复杂度是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30338749/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com