leetcode 9 Palindrome Number

不能用转换成字符串的方式,那样不符合空间要求。

就x按从小到大的位构造一个新的数a,看看等不等x就好了。

class Solution {
public:
    int ci(int ll){
        int m=1;
        while(ll--){
            m*=10;
        }
        return m;
    }
    bool isPalindrome(int x) {
        if(x<0) return false;
        int t=x;
        int len=0,a=0;
        while(t>0){
            len++;
            t/=10;
        }
        t=x;
        len--;
        while(t>0){
            a+=ci(len)*(t%10);
            t/=10;
            len--;
        }
        return x==a?1:0;
    }
};
原文地址:https://www.cnblogs.com/zywscq/p/4912256.html