7. Reverse Integer

来源:互联网 发布:声波牙刷的危害 知乎 编辑:程序博客网 时间:2024/06/05 08:23

Reverse digits of an integer.

Example1: x = 123, return 321
Example2: x = -123, return -321

水题没啥好说的,就一个小陷阱,如果转换后的数大于int的范围就return0。

class Solution {public:    int reverse(int x) {        if(x == 0)            return 0;        int f = 0;        int len = 0;        long long int newx = 0;        string s = "";        if(x < 0)        {            f = 1;            x = x * -1;        }        while(x > 0)        {            int a = x - x / 10 * 10;            s.push_back(a + '0');            x = x /10;        }        len = s.length();        for(int i = 0; i < len; ++ i)        {            newx = newx * 10;            newx = newx + s[i] - '0';        }        if(newx > 2147483647)            return 0;        if(f == 1)        newx = newx * -1;        return newx;    }};
0 0