Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321
直接整数操作:
class Solution {
public:
int reverse(int x) {
int flag = 1;
if (x < 0) {
flag = -1;
x = -x;
}
int result = 0;
while (x != 0) {
int m = x % 10;
x /= 10;
result = result * 10 + m;
}
result *= flag;
return result;
}
};
转字符串操作:
class Solution {
public:
int reverse(int x) {
stringstream ss;
string str;
ss << x;
str = ss.str();
int i = 0, len = str.length() - 1;
if (str[i] == '-')
i++;
while (i < len) {
char tmp = str[i];
str[i++] = str[len];
str[len--] = tmp;
}
return atoi(str.c_str());
}
};