题目链接

LeetCode 7. 整数反转

解题思路

思路主要就是转换成字符串,主要因为字符串是有反转的方法的。然后思路我对的,不过没想到 Math 有这几个方法,看到别人是这样用 Math 的,受教。

就是学习了 Math 的两个用法,一个是 sign 获取正负的,pow 平方。

代码实现

1
2
3
4
5
6
7
8
9
10
var reverse = function(x) {
let sign = Math.sign(x);
let res = (Math.abs(x) + '').split('').reverse().join('') * sign;

if (res > Math.pow(2, 31) - 1 || res < Math.pow(2, 31) * -1) {
res = 0;
}

return res;
};

回文数判断

在原题链接的基础上,添加符号判断即可。

1
2
3
4
5
6
7
let sign = Math.sign(x);
let res = (Math.abs(x) + '').split('').reverse().join('') * sign;

if (res === x && x >= 0) {
return true;
}
return false;