我对计算复杂性很新,但我知道嵌套的for循环会给出O(n ^ 2)。在我的情况下,我有一个for循环,调用一个函数,其中有一个for循环。复杂性是O(n)还是更差?
public static void main(String[] args) {
for(int i = 0; i < 10; i++){
if(i != 0){
System.out.println();
printt(i);
}
}
}
public static void printt(int i){
for(int j = 0; j <= 10; j++ ){
if(j !=0 ){
System.out.print(j*i+" ");
}
}
}
}
答案 0 :(得分:1)
考虑运行此代码片段时执行的打印语句数(第二个itc)。
最简单的解释方法是继续运行程序,你会发现你打印出 81 值,这告诉你有9个嵌套调用外循环的每次运行的函数(再次9次)。所以它最终是 O(n ^ 2)。