判斷一個整數是否是迴文數。迴文數是指正序(從左向右)和倒序(從右向左)讀都是一樣的整數。
示例 1:
輸入: 121 輸出: true
示例 2:
輸入: -121 輸出: false 解釋: 從左向右讀, 爲 -121 。 從右向左讀, 爲 121- 。因此它不是一個迴文數。
示例 3:
輸入: 10 輸出: false 解釋: 從右向左讀, 爲 01 。因此它不是一個迴文數。
進階:
你能不將整數轉爲字符串來解決這個問題嗎?
1.數字轉化爲字符串方法
以下是我的代碼,通過了,但是有點不開心,因爲題目要求的是true,我以爲應該是return true,然後運行錯了,return True,我以爲運行之後會返回的是True,後來在網上搜索了一下,才知道,return True是返回的true,,不過也算是又知道了一個知識了。
class Solution: def isPalindrome(self, x): """ :type x: int :rtype: bool """ a = str(x) if a == a[::-1]: return True else: return False |
2.不將數字轉化成字符串方法
因爲s==sum是true,所以不需要再特地添加true了
class Solution: def isPalindrome(self, x): """ :type x: int :rtype: bool """ s=x sum=0 if x < 0: return False else: while x: sum=sum*10+x%10 x=x//10 return s==sum |