剑指 Offer 16. 数值的整数次方

154 阅读1分钟

剑指 Offer 16. 数值的整数次方

如果指数为奇数,则取出一个,剩下的数指数为偶数 如果是指数为偶数,则使用降幂公式 2^4 = 2^2 * 2^2 降幂

var myPow = function (x, n) {
    if (n == 0) return 1
    if (n < 0) return 1 / myPow(x, -n);
    if (n % 2 == 1) return x * myPow(x, n - 1);
    return myPow(x * x, n / 2);
};