LeeCode前端算法基础100题(7)- 整数反转

152 阅读1分钟

一、问题详情:

给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−231,  231 − 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。

二、我的答案:

/**
 * @param {number} x
 * @return {number}
 */
var reverse = function(x){
    //js基础:取整+转字符串+分割+反转+拼接    
    let f = parseInt(x.toString().split('').reverse().join(''));
    //es6语法+三目运算符
    if (x < 0) f = -f;return f <= -2147483648 || f >= 2147483647 ?  0 : f
}; 

三、参考答案:

var reverse = function (x) {
    let y = parseInt(x.toString().split("").reverse().join(""));
    if (x < 0)
        y = - y;
    return y > 2147483647 || y < -2147483648 ? 0 : y;
};

四、总结建议:

学习和联系上面代码块中注释的文字:js基础用法中的一些操作方法。