Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.
Example 1:
Input: 121 Output: true
Example 2:
Input: -121 Output: false Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.
Example 3:
Input: 10 Output: false Explanation: Reads 01 from right to left. Therefore it is not a palindrome.
思路:
1 , 我的思路把数字转换为字符串.
定义两个指针,left指向字符串左边边界,right指向字符串右边边界;left和right同时向中心位置移动.直至相遇为止.如果遇到两个字符不等则说明不是回文串,直接返回false;
public boolean isPalindrome(int x) {
String num = String.valueOf(x);
int l = 0, r = num.length() - 1;
while(l < r) {
if(num.charAt(l) != num.charAt(r)) return false;
l++; r--;
}
return true;
}
}
2, 直接把数字颠倒;
例如, 把数字123变为321,然后判断数字是否相等; 代码以后再补上吧