Implement pow(x, n).
//此题思路,第一种最简单的迭代,第二种基本的递归,第三种,分治法。
// x^n = x^(n/2)*x^(n/2)*x(n%2)
//再者本题注意的细节,x=0,n=0,n负数等
double pow(double x, int n) {
double temp;
if(x == 0)return 0;
if(n==0)return 1;
if (n==1)
{
return x;
}
if(n == -1)
{
return 1/x;
}
if (n%2 == 0)//偶数
{
temp = pow(x,n/2);
return temp*temp;
}
else
{
temp = pow(x,n/2);
if(n>0)
return temp*temp*x;
else
return temp*temp*1/x;
}
}