JSリコウ古典100問 - 回文番号

整数 x が与えられた場合、x が回文整数の場合は true を返し、それ以外の場合は false を返します。

回文番号は、順方向 (左から右) と逆方向 (右から左) で同じ値を読み取る整数です。

    たとえば、121 は回文ですが、123 は回文ではありません。

例 1:

入力: x = 121
出力: true

例 2:

入力: x = -121
出力: false
説明: 左から右に読むと、-121 になります。右から左に読むと、121-です。したがって、これは回文数ではありません。

例 3:

入力: x = 10
出力: false
説明: 右から左に読むと、01 になります。したがって、これは回文数ではありません。

ヒント:

    -231 <= x <= 231 - 1

上級: 整数を文字列に変換せずにこれを解決できますか? できない

/**
 * @param {number} x
 * @return {boolean}
 */
var isPalindrome = function(x) {
   let str = x.toString()
   let mid = Math.floor(str.length/2)
   let flag = str.length%2
   let left,right
   if(flag){
        left = mid-1
        right = mid +1
   } else {
        left = mid-1
        right = mid
   }
   while(left>=0 && right<str.length){
       if(str.charAt(left) != str.charAt(right)){
           return false
       } else {
           left--
           right++
       }
   }
   return true
};

おすすめ

転載: blog.csdn.net/qq_36384657/article/details/128212247