python解法一:转化为字符串,翻转
class Solution:
def isPalindrome(self, x):
"""
:type x: int
:rtype: bool
"""
if x<0:
return False
elif str(x)==str(x)[::-1]:
return True
else:
return False
其实可以简化为一行代码
class Solution:
def isPalindrome(self, x):
"""
:type x: int
:rtype: bool
"""
return str(x)==str(x)[::-1]
解法2:不利用字符串,很自然想到翻转整数题目中的算法(https://mp.csdn.net/postedit/82020330)
class Solution:
def isPalindrome(self, x):
"""
:type x: int
:rtype: bool
"""
if 0<=x<10:
return True
elif x<0 or x%10==0:
return False
result=0
y=x
while(y):
temp=y%10
result=result*10+temp
y=y//10
if result==x:
return True
else:
return False