题意理解
计算x的n次幂,n可以是负数。
问题分析
直接一个一个相乘超时。
换一种乘法,x*x,(x*x)*(x*x)....最后乘上多余的一个
其他
属于计算机的技巧
链接
double myPow(double x, int n) {
if (n == 0) return 1;
if (n == -1) return 1 / x;
if (n == 1) return x;
return myPow(x * x, n / 2) * (n % 2 == 0 ? 1 : n > 1 ? x : 1 / x);
}