1. 给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false
  2. 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是
  1. 示例 1
  2. 输入:x = 121
  3. 输出:true
  4. 示例 2
  5. 输入:x = -121
  6. 输出:false
  7. 解释:从左向右读, -121 从右向左读, 121- 。因此它不是一个回文数。
  8. 示例 3
  9. 输入:x = 10
  10. 输出:false
  11. 解释:从右向左读, 01 。因此它不是一个回文数。
  12. 示例 4
  13. 输入:x = -101
  14. 输出:false

方法一:

  1. var isPalindrome = function(x) {
  2. var s=x.toString().split('').reverse().join('');
  3. return x==s
  4. };

方法二:

  1. var isPalindrome = function(x) {
  2. var isPalindrome = function (x) {
  3. if (x < 0) return false;
  4. if (x < 10) return true;
  5. let n = 10 ** Math.floor(Math.log10(x));
  6. while (n > 1 && x > 0) {
  7. if (Math.floor(x / n) !== x % 10) return false;
  8. x = Math.floor((x % n) / 10);
  9. n /= 100;
  10. }
  11. return true;
  12. };
  13. };