难度:简单
语言:Js
给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
例如,121 是回文,而 123 不是。
方法一:双指针
思路:(1)将数字转换为字符串。
(2)使用左指针、右指针分别从字符串的两端开始,比较两个数字是否相同。直到中间都相同,则为回文数;否则,不是。
/**
* @param {number} x
* @return {boolean}
*/
var isPalindrome = function(x) {
if(x<0) {
return false;
}
let string = x.toString();
const n = Math.floor(string.length/2);
for(var i = 0;i<n;i++) {
if(string[i] !== string[string.length-1-i]) return false;
}
return true;
};
方法二:翻转字符串
思路:如果翻转后的字符串与原始字符串相同,那就是回文数,否则,不是。
/**
* @param {number} x
* @return {boolean}
*/
var isPalindrome = function(x) {
return x.toString() === x.toString().split('').reverse().join('');
};