两个思路 1. 变成字符串然后进行双指针检查 2. 颠倒数字查看和原数字是否相等。简单题,没啥好说的

ans1

class Solution {
    public boolean isPalindrome(int x) {
       String s = Integer.toString(x);
       int start = 0;
       int end = s.length() - 1;
       // 字符串双指针
       while(start <= end) {
           if (s.charAt(start) != s.charAt(end)) return false;
           start ++;
           end --;
       }
       return true;
    }
}

ans2

class Solution {
    public boolean isPalindrome(int x) {
        int y = x;
	// 重新构造整数
        int n = 0;
        while(x > 0) {
            // 最后一位
            int digit = x % 10;
            n = digit + 10 * n;
            x /= 10;
        }
        return n == y;
    }
}

Q.E.D.


每一个平凡的日常都是连续的奇迹