9. Palindrome Number

考虑溢出。

思路就是用reverse integer的数学方法,把一个数倒过来,比较是否和原数字相同。

特殊情况:

1. 负数直接不对称

2. 溢出直接不对称

bug记录:

记得把原数字保存一下,不然后面其实x的值已经变了

    public boolean isPalindrome(int x) {
        if(x < 0) {
            return false;
        }
        int original = x;
        long res = 0;
        while(x != 0) {
            res = res * 10 + x % 10;
            x /= 10;
        }
        if(res > Integer.MAX_VALUE) {
            return false;
        }
        return original == (int)res;
    }

 

posted @ 2016-01-27 05:47  warmland  阅读(99)  评论(0编辑  收藏  举报