1、题目
Determine whether an integer is a palindrome. Do this without extra space.
2、代码实现
代码实现1
public static boolean isPalindrome(int x) { if (x < 0) { return false; } String s = String.valueOf(x); char[] chars = s.toCharArray(); int length = chars.length; for (int i = 0 ; i < length / 2; ++i) { if (chars[i] != chars[length - i -1]) { return false; } } return true; }
代码实现2
public static boolean isPalindrome1(int x) { if (x < 0) { return false; } String s = String.valueOf(x); char[] chars = s.toCharArray(); int start = 0; int end = chars.length - 1; while (start < end) { if (chars[start++] != chars[end--]) { return false; } } return true; }
注意这里是start < end,不是 start != end;比如 2 != 3 , 下一步 3 != 2,这样会下表越界,注意
切记不要搞错了,