10 Apr 2023C++ / Python / TypeScriptEasy

Palindrome Number

notes and solution files for palindrome number.

this entry collects the solution files i have for palindrome number. i may expand it with a fuller write-up later, but the implementation files are already here.

available solution files

  • Python palindrome-number/solution.py

Solution files

Pythonpalindrome-number/solution.py
class Solution(object):
    def isPalindrome(self, x):
        if x < class="syntax-number">0:
            return False
        
        original = x
        reversed_number = class="syntax-number">0
        
        while x > class="syntax-number">0:
            last_digit = x % class="syntax-number">10
            reversed_number = reversed_number * class="syntax-number">10 + last_digit
            x = x class=class="syntax-string">"syntax-comment">// class="syntax-number">10
        
        return original == reversed_number

solution = Solution()
print(solution.isPalindrome(class="syntax-number">121))
print(solution.isPalindrome(-class="syntax-number">121))
print(solution.isPalindrome(class="syntax-number">10))
Pythonpalindrome-number/synced-solution.py
class Solution:
    def isPalindrome(self, x: int) -> bool:
        if x < class="syntax-number">0: return False
        s = str(x)
        return s == s[::-class="syntax-number">1]
C++palindrome-number/synced-solution.cpp
class Solution {
public:
    bool isPalindrome(int x) {
        if (x < class="syntax-number">0) return false;
        string s = to_string(x);
        string r = s; reverse(r.begin(), r.end());
        return s == r;
    }
};
TypeScriptpalindrome-number/synced-solution.ts
function isPalindrome(x: number): boolean {
    if (x < class="syntax-number">0) return false;
    const s = x.toString();
    return s === s.split(class="syntax-string">'').reverse().join(class="syntax-string">'');
}