您的位置:首页 > 其它

LeetCode之7 --- Reverse Integer

2016-04-04 18:41 281 查看

题目:

  Reverse digits of an integer.  Example1: x
= 123, return 321  Example2: x
= -123, return -321

题目大意:

逆置一个整数,如:123--->321   -123--->-321

思路:

  这道题比较简单,和回文数的解法一致,只不过比回文数少了一个判断而已。具体思路是循环执行result = result * 10 + x % 10, x /= 10;但是需要注意判断边界条件:要考虑逆置完的数是否溢出,如果溢出则返回0。在这里使用long或者long long来存储result,如果result大于INT_MAX或者小于INT_MIN则返回0


代码:

class Solution {
public:
int reverse(int x) {
long result = 0;

while (x) {
result = result * 10 + (x % 10);
x /= 10;
}

if (result > INT_MAX || result < INT_MIN) {
return 0;
}

return result;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: