bigO中以下算法的运行时间是什么。
for(int i=1;i<=n;i++){
for(int j=i;j<=n;j++){
for(int k=j; k<=n;k++){
for(int l=k; l<=n;l++){
...
}
}
}
}
答案 0 :(得分:7)
此算法似乎是n ^ 4。当然,从理论的角度来看(没有任何编译器考虑)。
答案 1 :(得分:2)
N R个4。小数部分不计算在内。
答案 2 :(得分:1)
这种依赖循环集合的公式可以推断如下:
其中 c (常数)是最里面循环内的操作数, n 是元素数, r 是嵌套循环的数量。
在问题的案例中:
另一种有效但乏味的方法是使用Sigma符号:
答案 3 :(得分:0)
O(N ^ 4)是成本。
嵌套的每个都是N ^ 所以基本上N * N * N * N = N ^ 4
CS610,算法开发,NJIT。 我的研究生课程实际上派上用场了。
答案 4 :(得分:0)
我的回答是O(N ^ 4)...因为有四个“for循环”..并且很容易判断这个算法的运行时间...谢谢!