【leetcode】Reverse Integer

来源:互联网 发布:修家谱软件 编辑:程序博客网 时间:2024/06/01 12:27

Reverse Integer

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

思路:
这题主要注意的是范围,如果范围超出32位的限制(-214748364,2147483647),那么就得返回0。这个题目范围没有弄清楚。另外res需要设为long的形式。网上很多答案太旧,没有考虑到overflow的情况。

 class Solution {public:    int reverse(int x) {        long res=0;        int flag;        if(x<0) flag=1;        else flag=0;        x=abs(x);        while(x)        {            res=x%10+10*res;            x=x/10;        }        if(res>2147483647 || res<-2147483648) return 0;        if(flag==1)res=-res;        return int(res);    }};
0 0
原创粉丝点击