1
int foo(int n)
{
if(n==0)
return 1;
int sum = 0;
for(int i = 0;i < n;i++)
sum += foo(n-1);
return sum;
}
最近我在学Big O notation。 有人可以给我一个关于如何通过使用大O符号以及如何呈现此函数的运行时来确定此循环函数的运行时的想法。循环函数的运行时间
假设我假设n = 3,那是你提到的递归树吗? http://imgur.com/a/lusID – CDY
不,但接近。考虑for循环,递归调用sum + = foo(n-1)不依赖于循环变量i。因此,在树中的每个节点上,我们分支n次,但每个叶子都用n-1调用。 http://imgur.com/a/K9g8z – gue
谢谢,我明白了。你解释的很容易理解。 – CDY