【力扣】 - 9.回文数

82 阅读1分钟

回文数

时间复杂度:O(logn) [对于每次迭代会将输入除以 10]
空间复杂度:O(1)

  • 排除0、负数
  • 反转数字进行比较
var isPalindrome = function (x) {
    if (x < 0 || (!(x % 10) && x)) return false;
    let x2 = x,
        res = 0;
    while (x2) {
        res = res * 10 + x2 % 10;
        x2 = ~~(x2 / 10);
    }
    return res === x;
};