题目描述:
代码实现:
- 思路很简单,关键在于对于边界值的处理
- 时间复杂度:O(log(x))
/**
* @param {number} x
* @return {number}
*/
var reverse = function(x) {
var rev = 0
while (x !== 0) {
var pop = x % 10
x = parseInt(x / 10)
if (rev > 2147483647 / 10 || (rev == 2147483647 / 10 && pop > 7)) return 0
if (rev < -2147483648 / 10 || (rev == -2147483648 / 10 && pop < -8)) return 0
rev = rev * 10 + pop
}
return rev
};