您的位置:首页 > 其它

leetcode Reverse Integer

2015-03-21 00:12 375 查看
class Solution {
public:
int reverse(int x) {
const int maxlen = 100;
char str[maxlen];
memset(str, 0, sizeof(str));
if(x == 0x80000000){
return 0;
}
int storex = x;
if(x < 0){
x = x * (-1);
}
sprintf(str, "%d", x);
char rstr[maxlen];
memset(rstr, 0, sizeof(rstr));
int len = strlen(str);
int idx = 0;
for(int i = len - 1; i >= 0; --i){
rstr[idx++] = str[i];
}
rstr[idx] = '\0';
long long res = 0;
for(int i = 0; i < idx; ++i){
res = res * 10 + (rstr[i] - '0');
}

if(res >= 0x7fffffff){
return 0; //overflow
}
if(storex < 0){
res *= (-1);
}
return res;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: