問題出處:迴文數
題目描述
判斷一個整數是否是迴文數,如果一個整數,正讀和反讀相同時,它就是迴文數。
你可以假設每種輸入只會對應一個答案。但是,你不能重複利用這個數組中同樣的元素。
示例1:
Input: 121
Output: true
示例2:
Input: -121
Output: false
說明:從左到右爲-121,從右到左爲121-,所以它不是迴文數。
示例3:
Input: 10
Output: false
說明:從右到左爲01,因此它不是迴文數。
備註
不要用整型轉爲字符串的方法進行處理。
解題思路
- 將整數翻轉,比較兩者間的大小。
class Solution:
def isPalindrome(self, x):
if x < 0:
return False
else:
tmp_x = x
b = 0
while x > 0:
b = b * 10 + x % 10
x = int(x / 10)
if b == tmp_x:
return True
else:
return False