本文实例讲述了Python实现判断一个整数是否为回文数算法。分享给大家供大家参考,具体如下:
第一个思路是先将整数转换为字符串,再将字符串翻转并与原字符串做比较
1
2
3
4
5
6
7
8
|
def isPalindrome( self , x):
"""
:type x: int
:rtype: bool
"""
#思路:先将整数转换为字符串,再将字符串翻转并与原字符串做比较
x = str (x)
return x = = x[:: - 1 ]
|
代码简洁
第二个思路,尝试着不用字符串,将整数直接拆除一个数组,再比较这个数组是否“对称”
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
def isPalindrome( self , x):
"""
:type x: int
:rtype: bool
"""
#思路二:将数字转换成数组
#负数肯定不是回文数
if x < 0 :
return False
elif x < = 9 :
return True
else :
nums = []
while x > = 10 :
mod = x % 10
nums.append(mod)
x = x / 10
nums.append(x)
print "nums:" ,nums
for i in range ( 0 , len (nums) / 2 ):
if nums[i] ! = nums[ - 1 - i]:
return False
return True
|
希望本文所述对大家Python程序设计有所帮助。
原文链接:https://blog.csdn.net/u011583025/article/details/84729467