Reverse Integer
翻转一个整数
难度:易
例子:
Example1: x = 123, return 321
Example2: x = -123, return -321
没甚麽好说的,直接上代码;
class Solution {
public:
int reverse(int x) {
int i, j, k = 0;
int iResult = 0;
int flag = -1;
int iTemp = x;
while(1)
{
if(iTemp / 10 == 0)
{
break;
}
iTemp /= 10;
k ++;
}
k ++;
//std::cout<<k<<std::endl;
for(i = 1; i <= k; i ++)
{
if(x % 10 == 0 && flag == -1)
{
x /= 10;
continue;
}
if(x % 10 != 0)
flag = i;
if((iResult > 214748364 || (iResult == 214748364 && x % 10 >= 8)) || (iResult < -214748364 || (iResult == -214748364 && x % 10 >= 8)))
{
iResult = 0;
break;
}
iResult = iResult * 10 + x % 10;
x /= 10;
//std::cout<<"i= "<<i<<" "<<iResult<<std::endl;
}
return iResult;
}
};