快捷搜索: 王者荣耀 脱发

回文数 ---力扣(javascript)

题目:

判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

示例 1: 输入: 121 输出: true
示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。 因此它不是一个回文数。
示例3: 输入: 10 输出: false 解释: 从右向左读, 为 01 。 因此它不是一个回文数。

解题思路 我用的解法是字符串翻转,先将测试的数字转为字符串,因为数组有reserve()的方法,所以需要把字符串转为数组在进行翻转

/**
 * @param {number} x
 * @return {boolean}
 */
var isPalindrome = function(x) {
          
   
    // 负数不是一个回文数
    if(x<0){
          
   
        return false
    }
    // 对大于0的数进行判断
    else if(x>=0){
          
   
        let str = x.toString()  //转化为字符串
        let arr = str.split() //转化为数组
        let res = Number(arr.reverse().join())
        if(x===res){
          
   
            return true
        }else if(arr[0]===0){
          
   
            return false
        }else if(str!==res){
          
   
            return false
        }
    }
};
经验分享 程序员 微信小程序 职场和发展