【LeetCode】007.Reverse Integer

来源:互联网 发布:华夏财富网络借贷信息 编辑:程序博客网 时间:2024/05/29 06:55

Reverse digits of an integer.

Example1: x = 123, return 321 Example2: x = -123, return -321

方案一:不考虑所谓溢出,因为在 javascript 中没有溢出这个概念,或者说这个概念不是特别强。完全可以用数组,字符串的方式解决。

var reverse = function(x) {    var result = re(x);    // console.log("re:",result,re(result))    if(x==re(result) && result < Math.power(2,31) && result > -Math.power(2,31))return parseInt(result);    else return 0;};function re(a) {    // console.log("wait:",a);    if(a>-1){        return (""+a).split("").reverse().join("");    }else{        return "-"+(""+a).substr(1).split("").reverse().join("");    }}

方法二:考虑溢出,溢出时,自身与0或,不等于自身。

var reverse = function(x) {    var result = 0;    var digtal = 0;    var newresult = 0;    while(x!=0){        digtal = x % 10;        newresult = result*10 + digtal;        if((newresult - digtal | 0) != result*10){            return 0        }else{            result = newresult;        }        x = (x - digtal)/10;    }    return result;};
原创粉丝点击