一.问题描述
Palindrome Number
Determine whether an integer is a palindrome. Do this without extra space.
spoilers:
Some hints:
Could negative integers be palindromes? (ie, -1)
If you are thinking of converting the integer to string, note the restriction of using extra space.
You could also try reversing an integer. However, if you have solved the problem "Reverse Integer", you know that the reversed integer might overflow. How would you handle such case?
There is a more generic way of solving this problem.
二.代码编写
class Solution(object):
def isPalindrome(self, x):
"""
:type x: int
:rtype: bool
"""
#编程思想:将x反过来得到的int如果等于x,则x为回文的
rx=x
com_x=0
while rx>0 :
y=rx%10
com_x=com_x*10+y
rx/=10
if com_x==x:
return True
else:
return False
代码思想:依次取原整数的最后一位加到com_x上,加的时候原com_x要乘以10,由此可以做到将原整数x反序变成新的整数com_x,只要com_x==x,则x为回文的。