LeetCode #7. Reverse Integer

Reverse digits of an integer.

Example1:

    x = 123, return 321

Example2:

    x = -123, return -321

Solution:

class Solution
{
  public:
    int reverse(int x)
    {
        stringstream ss{};

        string s1{};
        ss << x;
        char ch;
        ss.get(ch);
        if (ch != '-')
            ss.unget();
        else
            s1.push_back('-');

        string s{};
        ss >> s;
        for (auto iter = s.crbegin(); iter != s.crend(); ++iter)
        {
            s1.push_back(*iter);
        }

        stringstream ss1{s1};
        int result;
        ss1 >> result;
        // return 0 when the reversed integer overflows.
        if (result == 2147483647 || result == -2147483648)
            return 0;
        return result;
    }
};

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容