Implement pow(x, n).
分析:
这道题一个一个相乘过不了。
分治可以解决。
public class Solution {
public double pow(double x, int n) {
//考虑n为负的情况
if(n < 0)
return 1.0/power(x, -n);
else
return power(x, n);
}
public double power(double x, int n){
if(n == 0)
return 1;
//分治
double v = pow(x, n/2);
if(n%2 == 0)
return v*v;
else
return v*v*x;
}
}