Implement pow( x , n ).
题意
实现幂函数。
题解
使用分治法求解。
分:将n分成n/2 直到n=0时,返回1;
治:对n为偶数,返回两数相乘的结果,奇数再乘多一个x;
class Solution {
public:
double myPow(double x, int n) {
if(n<0) return 1/power(x,-n);
else return power(x,n);
}
double power(double x,int n)
{
if(n==0) return 1;
double half=power(x,n/2);
if(n%2==0) return half*half;
else return half*half*x;
}
};