码迷,mamicode.com
首页 > 编程语言 > 详细

9-->>python3

时间:2018-07-01 22:05:34      阅读:246      评论:0      收藏:0      [点我收藏+]

标签:ali   整数   turn   解决   直接   pre   self   倒序   while   

判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

示例 1:

输入: 121
输出: true

示例 2:

输入: -121
输出: false
解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。

示例 3:

输入: 10
输出: false
解释: 从右向左读, 为 01 。因此它不是一个回文数。

进阶:

你能不将整数转为字符串来解决这个问题吗?

 

 

分析:该题与第7题类似,如果不转为字符串,可以用7中提过的常规解法  除以10取余进行反转

  由该题例可知,如果给出的数为负数,就可以直接返回False

  

 1 class Solution:
 2     def isPalindrome(self, x):
 3         """
 4         :type x: int
 5         :rtype: bool
 6         """
 7         if x<0:
 8             return False
 9         flag=x
10         ans=0
11         while x>0:
12             ans=ans*10+x%10
13             if x>2**31:
14                 return False
15             x//=10    #返回x/10的整数部分(121//10=12)
16         if ans==flag:
17             return True 
18         return False 

 

9-->>python3

标签:ali   整数   turn   解决   直接   pre   self   倒序   while   

原文地址:https://www.cnblogs.com/baiqingm/p/9251304.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!