您的位置:首页 > 其它

LeetCode 7: Reverse Integer

2015-10-18 23:13 232 查看

Reverse Integer

Reverse digits of an integer.

Example1: x = 123, return 321

Example2: x = -123, return -321

解题思路

本题比较简单,但是需要注意结果可能溢出。假设输入是一个 32-bit 的整数,则1000000003的reverse结果会溢出。

class Solution {
public:
int reverse(int x) {
// INT_MIN 和 INT_MAX 定义在 <limits> 头文件中
if (x == INT_MIN) return 0; //// reverse 溢出

bool isNeg = false;
if (x < 0) {
isNeg = true;
x = -x;
}

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

if (result > INT_MAX) return 0; // reverse 溢出

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