PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
Prob_Solve
[问题] Big Oh running time
楼主:
triumphant10
(yu12510)
2019-03-18 22:53:22
sum = 0;
for (i = 0; i < n; i++){
for (j = 0; j < i*i; j++){
if (j % i == 0){
for (k = 0; k < j; k++){
sum++;
}
}
}
}
大家好
这题的Big O 我算出来得到的是 O(n^4),不晓得对不对?
以及
想问一下各位都是如何去思考这种题目的?
如果要严谨一点的写法该如何是好?
想问各位的思路
谢谢!
作者:
fatcat8127
(胖胖猫)
2019-03-19 01:49:00
你的程式码可以以if的判断式是否成立分两部分简化外圈的两个for循环只有当j是i的倍数时才会进到if判断判断式内的k每次只会让sum+1
https://www.codepile.net/pile/oGA3Lq73
1x2+(1+2)x3+(1+2+3)x4+(1+2+3+4)x5...的累加每项都是n*(n-1)/2,可以再化减成算式即可O(1)求值
楼主:
triumphant10
(yu12510)
2019-03-19 02:21:00
谢谢你!我看懂了!
作者:
fatcat8127
(胖胖猫)
2019-03-19 10:04:00
我看到你在C++版的文发现好像误会你的意思惹0.0
楼主:
triumphant10
(yu12510)
2019-03-19 14:31:00
我有懂你想表达的,虽然不是我想问的XD 嘻嘻
继续阅读
[问题] DFS剪枝(已解决)
fatcat8127
[问题] 三维偏序(已解决)
fatcat8127
[问题] 一题现实中的问题
GYLin
Re: [问题] 乌龟塔问题
ddavid
[问题] 乌龟塔问题
nicknick0630
[问题] 请教 ZJ c824/c835 的01背包问题(已解决)
fatcat8127
[问题] 快速球协变换
j0958322080
[问题] 请教 zerojudge c260 的想法 (已解决)
vincent97198
[问题] UVA 10268 WA
BrunoBao
[问题] cascade如何分?
g318
Links
booklink
Contact Us: admin [ a t ] ucptt.com