作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
有一个 HW 分配来计算 BigOh,但是我循环中的迭代给我带来了问题。
循环:
public static int fragment4b(int n){
int sum = 0;
for(int i = 1; i <= n*n; i++)
for(int j = i; j>= 1; j /=2)
sum +=j;
}
我知道外循环有 O(n*n),但我觉得我的内循环有问题
所以我知道内循环有 O( (ln(i)/ln(2)) + 1 )这似乎是对的?或者我找错了树
最佳答案
内部循环完全重复sum+= j
语句
外层循环重复 N^2 次。
所以操作总数是内循环从1到N^2的总和如下:
那就是
编辑:记录日志时,请发言。
关于java - 计算BigOh,迭代除法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19147740/
您能解释一下是什么让算法成为 O(log n) 吗? 如果您能用简单的代码展示它,我将不胜感激。 谢谢 最佳答案 log(n)/log(i)是递归关系的解 f(n) = f(n/i) + c 每次你
我是一名优秀的程序员,十分优秀!