判断整数回文数

题目:

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

示例 1:

输入: 121
输出: true

示例 2:

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

class Solution {
    public boolean isPalindrome(int x) {
       
        if(x<0||(x%10==0&&x!=0))
        {
            return false;
        }
        
        int revNum=0;
        while(x>revNum)
        {
            revNum=revNum*10+x%10;
            x=x/10;
        }
        
        return x==revNum||revNum/10==x;
    }
}

算法思路:判断一个整数是不是回文,我们可以先将这个整数进行反转,对比反转后的整数和之前的整数是否相同;

                  其实还有一种方式,就是将这个整数的前一半和后一半进行比较,也可以得出最后的结果;

                  如果整数x为负数,直接返回false。

posted @ 2019-04-18 20:02  彩色的梦  阅读(404)  评论(0编辑  收藏  举报