递归函数内部循环的时间复杂度

时间:2019-10-03 13:46:46

标签: c time-complexity big-o

假设有一个运行n次的递归函数和一个运行n ^ 2次的嵌套for循环,那么它的时间复杂度为O(n)或O(n ^ 3)

例如:

fun(int n) {
if(n==1) return;

for(i=0;i<n;i++) 
  for(j=0;j<n;j++) 
    printf("A");

}

1 个答案:

答案 0 :(得分:-2)

上述函数的时间复杂度为O(n ^ 3)。

看起来每隔n次,循环s将运行n(n + 1)/ 2次,这将发生n次。因此,迭代的总数将为(n ^ 2)(n + 1)/ 2,即O(n ^ 3)。