Reverse Integer
Reverse digits of an integer.
Example1: x = 123, return 321
Example2: x = -123, return -321
将一个整数按数字翻转。
分析:
每次取数字的最低位作为翻转后整数的最高位,计算时就要进行溢出判断,为防止溢出用 long long int 作为翻转后计算的结果。
注意:正数和负数的边界是不一样的。class Solution {
public:
int reverse(int x) {
const int max = 0x7fffffff; //int最大值
const int min = 0x80000000; //int最小值
long long int rev = 0;
while(x)
{
rev = 10*rev + x % 10;
if((rev > max) || (rev < min)) //越界
{
return 0;
}
x = x / 10;
}
return rev;
}
};
本文介绍了一种用于反转整数的算法实现,通过不断获取输入整数的最低位并将其添加到结果的最高位来完成反转过程。该算法还考虑了整数溢出的问题,并使用long long int类型来避免越界错误。
283

被折叠的 条评论
为什么被折叠?



