iT邦幫忙

2021 iThome 鐵人賽

DAY 26
0
自我挑戰組

30天 Leetcode解題之路系列 第 26

Day 26 - Palindrome Number

大家好,我是毛毛。ヾ(´∀ ˋ)ノ
廢話不多說開始今天的解題Day~


9. Palindrome Number

Question

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

Example1

Input: x = 121
Output: true

Example2

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.

Example3

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

  • -2^31 <= x <= 2^31 - 1

解題

題目

首先先簡單的翻譯一下題目
給一個數字,判斷是不是對稱的。

Think

作法大致上是這樣

  • 從頭跟尾往中間比對,只要有一個是不相同的就回傳False

Code

Python

class Solution:
    def isPalindrome(self, x: int) -> bool:
        x = str(x)
        left = 0
        right = len(x)-1
        
        while left < right:
            if x[left] != x[right]:
                return False
            
            left += 1
            right -= 1
            
        return True

Result

  • Python

大家明天見/images/emoticon/emoticon29.gif


上一篇
Day 25 - Permutations
下一篇
Day 27 - Detect Capital
系列文
30天 Leetcode解題之路30

尚未有邦友留言

立即登入留言