Easy
Given an integer x, return true if x is palindrome integer.
An integer is a palindrome when it reads the same backward as forward. For example, 121 is palindrome while 123 is not.
Example 1:
Input: x = 121
Output: true
Example 2:
Input: x = -121
Output: false
Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.
Example 3:
Input: x = 10
Output: false
Explanation: Reads 01 from right to left. Therefore it is not a palindrome.
Example 4:
Input: x = -101
Output: false
Constraints:
-231 <= x <= 231 - 1Follow up: Could you solve it without converting the integer to a string?
Here are the steps to solve the “Palindrome Number” problem:
x is negative, return false since negative numbers cannot be palindromes.x to obtain a new integer.x.true; otherwise, return false.class Solution:
def isPalindrome(self, x: int) -> bool:
# Handle special case for negative numbers
if x < 0:
return False
# Reverse the digits of the positive integer
reversed_x = self.reverse(x)
# Check for palindrome
return x == reversed_x
def reverse(self, x: int) -> int:
reversed_x = 0
while x > 0:
digit = x % 10
reversed_x = reversed_x * 10 + digit
x //= 10
return reversed_x
# Example Usage:
solution = Solution()
# Example 1:
x1 = 121
print(solution.isPalindrome(x1)) # Output: True
# Example 2:
x2 = -121
print(solution.isPalindrome(x2)) # Output: False
# Example 3:
x3 = 10
print(solution.isPalindrome(x3)) # Output: False
# Example 4:
x4 = -101
print(solution.isPalindrome(x4)) # Output: False
This code defines a Solution class with a method isPalindrome that takes an integer x as input and returns True if it is a palindrome and False otherwise. The example usage demonstrates how to create an instance of the Solution class and call the isPalindrome method with different inputs. The reverse method is used to reverse the digits of a positive integer.