导航

Palindrome Number

Posted on 2014-10-20 22:30  八竿子打不着  阅读(167)  评论(0)    收藏  举报

回文数字。玩过回文字符串之后在玩一个回文数字,相比于最长回文字符串的巧妙,这道题目唯一值得称道的地方可能就是那句Do this without extra space,可以说这是这道题目明面上给出的唯一束缚,当然如果要是看了提示的话,会发现输入的整数是有负整数的可能。也就是说还要处理负数的问题,在这里当是负数的时候直接返回false就可以。下面贴出代码:

public class Solution {
    public boolean isPalindrome(int x) {
        if(x<0){
            return false;
        }
        else{
            int y=x;
            int rnum = 0;
            int i = 0;
            int n = x;
            while (n / 10 > 0) {
                i++;
                n = n / 10;
               }
            while (x / 10 > 0) {
                rnum = rnum + (int) ((x % 10) * Math.pow(10, i));
                x = x / 10;
                i = i - 1;
            }
            rnum = rnum + x % 10;
            return y==rnum;
        }
    }
}