diff --git a/javascript/9-Palindrome-Number.js b/javascript/9-Palindrome-Number.js index 2d6770d07..9312c1033 100644 --- a/javascript/9-Palindrome-Number.js +++ b/javascript/9-Palindrome-Number.js @@ -19,3 +19,26 @@ var isPalindrome = function (x) { // Runtime: 302 ms, faster than 40.50% of JavaScript online submissions for Palindrome Number. // Memory Usage: 51.8 MB, less than 8.36% of JavaScript online submissions for Palindrome Number. + +/** + * Reverse Integer Using Modulo + * Time O(N) | Space O(1) + * https://leetcode.com/problems/palindrome-number/ + * @param {number} x + * @return {boolean} + */ + var isPalindrome = function(x) { + if (x < 0) return false; + + const inputX = x; + let revX = 0; + + while (x > 0) { + revX += x % 10; + x = Math.floor(x / 10); + + if (x > 0) revX *= 10 + } + + return revX === inputX; +};