考察的知识点:双指针;

解答方法分析:

  1. 将整数 x 转换为字符串。
  2. 使用双指针法,一个指针从字符串的头部开始遍历,另一个指针从字符串的尾部开始遍历。
  3. 比较两个指针指向的字符是否相等,如果不相等,则说明该数字不是回文数,返回 false。
  4. 如果两个指针都能够遍历到中间位置(或相邻位置),则说明该数字是回文数,返回 true。

所用编程语言:C++;

完整编程代码:↓

class Solution {
  public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param x int整型
     * @return bool布尔型
     */
    bool isPalindrome(int x) {
        string str = to_string(x);
        int left = 0, right = str.length() - 1;
        while (left < right) {
            if (str[left] != str[right]) {
                return false;
            }
            left++;
            right--;
        }
        return true;
    }
};