1. 问题描述
给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
例如,121 是回文,而 123 不是。
2. 解题思路
- 先把整数
x
转换成数组 - 排除负数
- 循环数组,数组前面的元素和后面元素比较(即
0~arr.length - 1,1~(arr.length - 1 - 1),2 ~ (arr.length - 1 - 2)
),相等继续循环,直到循环到中间元素停止。
3. 解题
/**
* @param {number} x
* @return {boolean}
*/
var isPalindrome = function(x) {
let arr = (x + '').split('');
if(arr[0] === '-') return false;
for(let i = 0; i < arr.length / 2; i++) {
if(arr[i] !== arr[arr.length - 1 - i]) {
return false;
} else {
continue;
}
}
return true;
};
(1) 输出:
问题来源:力扣(LeetCode)
链接: https://leetcode-cn.com/problems/palindrome-number/submissions/