(1)计算x的n次方的幂运算
double pow( double x, int n ){
assert( n >= 0 );
if( n == 0 )
return 1.0;
double t = pow(x, n/2); //奇数
if( n%2 )
return x*t*t;
return t*t;
}
递归深度:logn
时间复杂度:O(logn)
(2)递归树
int f(int n)
{
assert( n >= 0 );
if( n == 0 )
return 1;
return f(n-1) + f(n-1);
}
指数级的算法,时间复杂度O(2^n)
(3)递归中多次递归调用