[LeetCode] Palindrome Number

Palindrome Number

Determine whether an integer is a palindrome. Do this without extra space.

解题思路:

思路比较简单,将原来的数求逆数。若逆数与原数相等,返回true,否则,返回false。弄清楚,负数能否回文?若溢出咋办?这里总结一下,若遇到整数的逆转,或者字符转化为整数,就需要考虑是否溢出的问题。解决办法就是用longlong类型参与运算即可。

class Solution {
public:
    bool isPalindrome(int x) {
        if(x<0){
            return false;
        }
        long long longX = x;
        long long reverseX = 0;
        while(longX!=0){
            reverseX *= 10;
            reverseX += longX%10;
            longX /= 10;
        }
        
        return reverseX==x;
    }
};


0 条评论

    发表评论

    电子邮件地址不会被公开。 必填项已用 * 标注