7.整数反转
- 反转之后如果溢出则做逆运算不成立
new = old * 10 + x % 10// 正序运算
old = (new - x % 10)/10// 逆序运算
代码
class Solution {
public int reverse(int x) {
// 最终要返回的反转数
int rev = 0;
// 只要x还不到0说明还有余,继续操作
while(x != 0) {
// X对10取模得到个位数
// 最终的结果每次乘10空出个位加上flag
int newRev = rev * 10 + x % 10;
// 判断溢出,如果不溢出继续做
if(rev != (newRev - x%10)/10)
return 0;
rev = newRev;
// x为整数,除10仍然为整数
x /= 10;
}
return rev;
}
}

浙公网安备 33010602011771号