Code Ganker: Palindrome Number -- LeetCode

2014年2月18日星期二

Palindrome Number -- LeetCode

原题链接: http://oj.leetcode.com/problems/palindrome-number/
这道题跟Reverse Integer差不多,也是考查对整数的操作,相对来说可能还更加简单,因为数字不会变化,所以没有越界的问题。基本思路是每次去第一位和最后一位,如果不相同则返回false,否则继续直到位数为0。代码如下:
public boolean isPalindrome(int x) {
    if(x<0)
        return false;
    int div = 1;
    while(div<=x/10)
        div *= 10;
    while(x>0)
    {
        if(x/div!=x%10)
            return false;
        x = (x%div)/10;
        div /= 100;
    }
    return true;
}
这个题和Longest Palindromic Substring也很接近,只是处理的数据结构有所不同。如果大家这个题有更好的解法,欢迎讨论哈。可以留言或者发邮件到linhuanmars@gmail.com给我,多谢~

1 条评论: