1.题目
Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321
2.解法
思路:考虑溢出的情况
时间复杂度O(N)
public class Solution {
public int reverse(int x){
boolean bPositive = true;
if(x < 0){
if(x == -2147483648){
return 0;
}
bPositive = false;
x = -x;
}
int nRes = 0;
while(x != 0){
int remainder = x % 10;
x /= 10;
if(nRes > 214748364){
return 0;
}
nRes = nRes * 10 + remainder;
}
if(bPositive){
return nRes;
}else{
return -nRes;
}
}
}