一、什么是回文数

回文数指的是一个数字,从左到右读和从右到左读是一样的,比如“12321”,“123321”等等,在leetCode中,回文数的定义是:判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

二、leetCode中回文数的示例分析

在leetCode中,关于回文数的示例分析如下:

1、示例1:输入: 121,输出: true。因为121的正序(从左向右)和倒序(从右向左)读都是一样的,故输出true。

2、示例2:输入: -121,输出: false。因为-121的正序(从左向右)和倒序(从右向左)读不是一样的,故输出false。

3、示例3:输入: 10,输出: false。因为10的正序(从左向右)和倒序(从右向左)读不是一样的,故输出false。

三、leetCode中回文数实现原理

leetCode中回文数的实现原理是:将输入的数字转换成字符串,然后将字符串反转,之后将反转后的字符串转换成数字,最后比较转换前后的数字是否相等,如果相等则说明是回文数,否则不是回文数。

以示例1为例,输入的是121,转换成字符串后为“121”,反转后为“121”,转换成数字后为121,转换前后的数字相等,故判断121是回文数。

实现代码如下:

function isPalindrome(x) {
const reverseNum = Number(String(x).split('').reverse().join(''));
return x === reverseNum;
}