Try   HackMD

Leetcode 筆記 :(9) Palindrome Number

tags: Leetcode

題目

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 - 1

思考邏輯

  1. 使用Python 那就當然要偷懶所以一開始就直接使用字串比對。
class Solution: def isPalindrome(self, x: int) -> bool: tmp = str(x) Palindrome = tmp[::-1] return tmp == Palindrome
  1. 但是方法1好像太偷懶沒有思考到其他的,所以就乖乖用 mod 做計算
class Solution: def isPalindrome(self, x: int) -> bool: if x < 0: return False Palindrome = 0 ori = x while(x != 0): tmp = x%10 x = (x-tmp)/10 Palindrome = Palindrome*10+tmp return ori == Palindrome