码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode 50. Pow(x, n)

时间:2019-12-15 22:17:35      阅读:111      评论:0      收藏:0      [点我收藏+]

标签:leetcode   return   etc   简洁   fun   script   function   java   javascrip   

这真的考数学。。。

var myPow = function(x, n) {
    if (n===0) return 1;
    
    let pow = Math.abs(n);
    
    let result = pow%2===0 ? myPow(x*x,pow/2) : myPow(x*x,(pow-1)/2) * x;
    
    return n < 0 ? 1/result : result;

};

另一种看起来简洁的


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

    let result = 1;
    while(n !== 0){
        if(n % 2 !== 0){
            result = result * x;
        }
        x = x * x;
        n = Math.floor(n / 2);
    }
    return result;
};

leetcode 50. Pow(x, n)

标签:leetcode   return   etc   简洁   fun   script   function   java   javascrip   

原文地址:https://www.cnblogs.com/rubylouvre/p/12046021.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!