Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321
Note:
The input is assumed to be a 32-bit signed integer. Your function should return 0 when the reversed integer overflows.
水题,只是要注意判断是否溢出,一开始忘记判断了
class Solution {
public:
int reverse(int x) {
int tmp = x, ret = 0;
while(tmp) {
int oldnum = ret;
ret = ret * 10 + tmp % 10;
if((ret - tmp % 10) / 10 != oldnum) return 0;
tmp /= 10;
}
return ret;
}
};