1.Question
Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321
class Solution {
public:
int reverse(int x) {
int sign = x >= 0 ? 1 : -1; //先取x的符号
long int res = 0; //先用long int 型来保存res,以防溢出
x = abs(x);
while(x)
{
res = res * 10 + x % 10;
x /= 10;
}
res = res * sign;
if(res > 2147483647 || res < -2147483648) return 0; //如果溢出则返回0
else return res;
}
};
3.Note
a. 这个题有两个特殊情况需要注意,一个是1000这种,倒转之后是1;还有就是倒转之后溢出的。