一、知识点:
双指针、字符串
二、文字分析:
- 将整数x转换为字符串s。
- 使用双指针的方式,分别从字符串s的开头和结尾向中间移动,比较对应位置的字符是否相等。如果相等,继续移动指针。如果不相等,返回false。
- 如果双指针都移动到中间位置,说明字符串是回文的,返回true。
该方法的时间复杂度为O(log10(x)),空间复杂度也为O(log10(x)),其中x是输入的整数。
三、编程语言:
java
四、正确代码:
import java.util.*; public class Solution { public boolean isPalindrome(int x) { String s = String.valueOf(x); int left = 0; int right = s.length() - 1; while (left < right) { if (s.charAt(left) != s.charAt(right)) { return false; } left++; right--; } return true; } }