7. Reverse Integer
2018-01-20 本文已影响0人
i_Eloise
- first attempt
class Solution {
public:
int reverse(int x) {
vector<int> ve;
int remain = abs(x);
int bit;
if(remain == 0)
return 0;
while(remain > 0 )
{
bit = remain%10;
ve.push_back(bit);
remain/=10;
}
int result = 0;
for(int i = 0; i < ve.size();i++)
{
result += ve[i]*pow(10,ve.size()-1-i);
if(result<0)
return 0;
}
return x>0?result:(-1)*result;
}
};
- second attempt
class Solution {
public:
int reverse(int x) {
int remain = abs(x);
long result = 0;
int bit;
if(remain == 0)
return 0;
while(remain > 0 )
{
bit = remain%10;
result = result*10+bit;
if(result>INT_MAX)
return 0;
remain = remain/10;
}
return (x>0?result:(-1)*result);
}
};