题目
给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。
示例 :
输入:x = 212
输出:true
解题
个人思路:
因为回文就是翻转和没翻转情况下都是一样的,假设两指针指向头和尾,所以第一个位置和最后一个位置肯定相同,倒数第二和正数第二也相同,依次类推,直到头指针和尾指针相交为止,我看了下,其他人好像并没有用这种方法解题。
class Solution {
public boolean isPalindrome(int x) {
String s = String.valueOf(x);
int len = s.length(); //尾指针
if (len == 1) {
return true;
}
int i = -1; //头指针
while(i < len) { //只有头指针小于尾指针才可以执行判断
len--;
i++;
if (s.charAt(i) == s.charAt(len)) { //判断具体位置是否相同
continue;
}else {
return false;
}
}
return true;
}
}
官方题解: