码迷,mamicode.com
首页 > 其他好文 > 详细

[LeetCode] Reverse Integer

时间:2015-04-17 15:48:23      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:c++   leetcode   

Reverse Integer

Reverse digits of an integer.

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

解题思路:

这道题比较简单,需要注意的就是要考虑int类型翻转之后,可能会溢出,若溢出,则返回0。先用一个long long类型来存储结果,然后转化成int类型,若数值不变,则没有溢出,若数值变了,则溢出了。

class Solution {
public:
    int reverse(int x) {
        int sign = 1;
        if(x<0){
            x=-x;
            sign=-1;
        }
        
        long long tempResult = 0;
        
        while(x!=0){
            tempResult *= 10;
            tempResult += x%10;
            x /= 10;
        }
        
        tempResult = tempResult*sign;
        
        int result = (int)tempResult;
        if(result!=tempResult){
            result=0;
        }
        
        return result;
    }
};


[LeetCode] Reverse Integer

标签:c++   leetcode   

原文地址:http://blog.csdn.net/kangrydotnet/article/details/45096353

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!