题目
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
思路
1.①只要是负数或者是0,可立即返回真假值
②反转数字,看两者是否相等
class Solution:
def isPalindrome(self, x: int) -> bool:
if(x==0):
return True
if(x<0 or x%10==0):
return False
RESULT=0
ORIGIN=x
while(x):
RESULT=RESULT*10+x%10
x=int(x/10)
if(RESULT==ORIGIN):
return True
else:
return False
2.①反转一半,看反转后的一半和剩下的一半相不相同
②注意如果为奇数时,需要除于10
class Solution:
def isPalindrome(self, x: int) -> bool:
if(x==0):
return True
if(x<0 or x%10==0):
return False
RESULT=0
while(x>RESULT):
RESULT=RESULT*10+x%10
x=int(x/10)
return x==RESULT or x==int(RESULT/10)