Given a 32-bit signed integer, reverse digits of an integer.
Note:
Assume we are dealing with an environment which could only hold integers within the 32-bit signed integer range. For the purpose of this problem, assume that your function returns 0 when the reversed integer overflows.
Example1:
1 2
Input: 123 Output: 321
Example2:
1 2
Input: -123 Output: -321
Example3:
1 2
Input: 120 Output: 21
Ideas
模十法,将各位的数字依次往最高位升
初始为负数的依然为负数形式
当数字大小茶超过2^32的时候,就返回0
Code
1 2 3 4 5 6 7 8 9 10
var reverse = function(x) { var y = Math.abs(x); var result = 0; while(y > 0){ result = result * 10 + y % 10; y = parseInt(y / 10); } result = x < 0 ? -result : result; return result >= -Math.pow(2,31) && result <= Math.pow(2,31) - 1 ? result : 0; };
近期评论