AC代码(C++):
class Solution {
public:
//将x转化为一个对应的字符串并且去除前导0
string res(int x){
string s = to_string(x), ans;
//反转字符串
for(int i=0; i<s.length()/2; ++i){
swap(s[i], s[s.length()-1-i]);
}
//去除前导0
int pos = 0;
while(s[pos]=='0')
pos ++;
//获取答案
for(int i=pos; i<s.length(); ++i)
ans += s[i];
return ans;
}
int reverse(int x){
//考虑整型溢出的问题 将x转换为long long int
long long int t = x;
if(t==0)
return 0;
string s;
if(t<0){
s += "-";
t = -t;
}
s += res(t);
long long int res = stoll(s);
//INT_MAX 和 INT_MIN是两个C库函数 #include <climits>
//表示整型的最大值和最小值
if(res < INT_MIN || res > INT_MAX)
return 0;
else
return stoi(s);
}
};