LeetCode Easy Palindrome Number

题目要求:

判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

输入: 121
输出: true

输入: -121
输出: false
解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。

输入: 10
输出: false
解释: 从右向左读, 为 01 。因此它不是一个回文数。


这个代码有一个bug,不知道哪里出问题了,过不了。
int isPalindrome(int x) {  
     if(x<0) return 0;
    int ret = 0;
    while(x!=0)
    {    
        ret = ret*10 + x%10;
        x = x/10;
    }
    if(ret==x)    return 1;
}

这段代码就可以

int isPalindrome(int x) {
     
     int a = x;
    int r = 0;
    if (x<0) return 0;
    while(a>0)
    {    
        r = r*10 + a%10;
        a = a/10;
    }
    return r == x;
}

猜你喜欢

转载自www.cnblogs.com/WuLiang-cola/p/9140274.html