@author: ZZQ
@software: PyCharm
@file: HuiWenShu.py
@time: 2018/9/16 16:51
要求:判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
e.g.: 输入: 121 输出: true
输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。
输入: 10 输出: false 解释: 从右向左读, 为 01 。因此它不是一个回文数。
思路: 用字符串来存储回文,每翻转一次,判断一次。
class Solution():
def __init__(self):
pass
def isPalindrome(self, x):
"""
:type x: int
:rtype: bool
"""
rightstr = str(x)
# print(rightstr)
if x < 0:
return False
i = 0
n = x
while n > 0:
reversestr = str(n % 10)
n = n / 10
# print(reversestr, n)
if rightstr[i] != reversestr:
return False
i += 1
return True
if __name__ == "__main__":
n = -12345678987654321
answer = Solution()
print answer.isPalindrome(n)