C++实现 整数反转
方法一:
class Solution {
public:
int reverse(int x) {
long long int res = 0;
while (x) {
res *= 10;
res += x % 10;
x /= 10;
if (res < INT_MIN || res > INT_MAX) {
res = 0;
break; // 及时跳出
}
}
return res;
}
};
方法二:
class Solution {
public:
int reverse(int x) {
int min = -1 * pow(2, 31);
int max = pow(2, 31) - 1;
long int temp;
long int res = 0;
if (x > max || x < min)
{
return 0;
}
while (x != 0)
{
temp = x % 10;
x = x / 10;
res = res * 10 + temp;
}
if (res > max || res < min)
{
return 0;
}
return res;
}
};
方法三:
class Solution {
public:
int reverse(int x) {
long int res = 0;
int temp;
while(x != 0)
{
temp = x % 10;
x = x / 10;
res = res * 10 + temp;
}
if(res > INT_MAX || res < INT_MIN)
{
return 0;
}
return res;
}
};