LeetCode之Palindrome Number(回文数)

87 阅读1分钟

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,这样会下表越界,注意

 

切记不要搞错了,