题目:
Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321
解答:
每次求出当前最低位,同时用迭代求倒过来的值(不需要对负数进行先变正的操作)
注意一个数字在倒过来的时候是可能出现溢出的,需要进行溢出检查
class Solution {
public:
int reverse(int x) {
int ans = 0;
while(x)
{
int tmp = ans * 10 + x % 10;
if(tmp / 10 != ans)//to check if overflow occur
return 0;
ans = tmp;
x = x / 10;
}
return ans;
}
};