美文网首页
7. Reverse Integer

7. Reverse Integer

作者: i_Eloise | 来源:发表于2018-01-20 17:25 被阅读0次
  • first attempt
class Solution {
public:
    int reverse(int x) {
        vector<int> ve;
        int remain = abs(x);
        
        int bit;
        if(remain == 0)
            return 0;
        while(remain > 0 )
        {
           bit = remain%10;
           ve.push_back(bit);
           remain/=10;
        }
        int result = 0;
        for(int i = 0; i < ve.size();i++)
        {
            result += ve[i]*pow(10,ve.size()-1-i);
            if(result<0)
                return 0;
        }
        return x>0?result:(-1)*result;
    }
};
  • second attempt
class Solution {
public:
    int reverse(int x) {
        
        int remain = abs(x);
        long result = 0;
        int bit;
        if(remain == 0)
            return 0;
        while(remain > 0 )
        {
           bit = remain%10;
           result = result*10+bit;
           if(result>INT_MAX)
                return 0;
           remain = remain/10;
        }
        return (x>0?result:(-1)*result); 
    }
};

相关文章

网友评论

      本文标题:7. Reverse Integer

      本文链接:https://www.haomeiwen.com/subject/osetaxtx.html