C++
方法:
思路:递归不断分解
class Solution {public:double myPow(double x, int n) {long long N = n;return n >= 0 ? myPowCore(x, N) : 1.0/myPowCore(x, -N);}double myPowCore(double x, long long n) {if (n == 0) {return 1.0;}double ret = myPowCore(x, n >> 1);ret *= ret;//如果是奇数指数if (n & 1) {ret *= x;}return ret;}};
