题目描述
给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。
示例 1:
输入:x = 121
输出:true
lc练习
实现-m
public boolean isPalindrome(int x) {
if (x < 0) return false;if (x >= 0 && x <= 9) return true;String s = String.valueOf(x);int start = 0;int end = s.length() - 1;while ((start != end || end - start > 1) && start < end) {
if (s.charAt(start) != s.charAt(end)) {
return false;}start++;end--;}return true;}
实现-lc
复杂度分析
时间复杂度:O(logn),对于每次迭代,我们会将输入除以 10,因此时间复杂度为 O(logn)。
空间复杂度:O(1)。我们只需要常数空间存放若干变量。
实现