Determine whether an integer is a palindrome. Do this without extra space.
Python 1:
class Solution(object):
def isPalindrome(self, x):
"""
:type x: int
:rtype: bool
"""
return str(x)==str(x)[::-1]
Python 2:
class Solution(object):
def isPalindrome(self, x):
"""
:type x: int
:rtype: bool
"""
if x<0:
return False
p,res=x,0
while p:
res=res*10+p%10
p/=10
return res==x
两种方案,但是由于题目要求without extra space,所以第一种方案是错误的,但是很好理解并且简单。第二种方案的思路和第一种一样,反转数字,判断是否是回文。
还有某不知名大神的一种方案: