9. Palindrome Number

代码1

Runtime: 8 ms, faster than 45.98% of Java online submissions for Palindrome Number.

class Solution {
    public boolean isPalindrome(int x) {
        if(x < 0) return false;
        int digit = 1;
        int temp = x;
        while ((temp % 10) != temp) {
            temp /= 10;
            digit++;
        }
        int[] arr = new int[digit];
        temp = x;
        for (int i = digit - 1; i >= 0; i--) {
            arr[i] = temp % 10;
            temp /= 10;
        }
        int left = 0, right = digit - 1;
        while (left < right) {
            if (arr[left++] != arr[right--]) return false;
        }
        return true;
    }
}

代码2

参考最高赞的答案
Runtime: 6 ms, faster than 100.00% of Java online submissions for Palindrome Number.

class Solution {
    public boolean isPalindrome(int x) {
        if (x<0 || (x!=0 && x%10==0)) return false;
        int rev = 0;
        while (x>rev){
            rev = rev*10 + x%10;
            x = x/10;
        }
        return (x==rev || x==rev/10);
    }
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容