首页 > 其他 > 详细

leetcode9. 回文数 🌟

时间:2019-06-29 21:16:32      阅读:62      评论:0      收藏:0      [点我收藏+]

题目:

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

示例 1:

  输入: 121
  输出: true
示例 2:

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

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

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

来源:力扣(LeetCode)

解答:

1 class Solution:
2     def isPalindrome(self, x: int) -> bool:
3         return str(x) == str(x)[::-1]
 1 class Solution:
 2     def isPalindrome(self, x: int) -> bool:
 3         if x < 0 or x % 10 == 0 and x != 0:
 4             return False
 5 
 6         reversed_num = 0
 7         while x > reversed_num:
 8             reversed_num = x % 10 + reversed_num * 10
 9             x //= 10
10 
11         return reversed_num == x or reversed_num // 10 == x
 1 class Solution:
 2     def isPalindrome(self, x: int) -> bool:
 3         if x < 0 or x % 10 == 0 and x != 0:
 4             return False
 5         
 6         if x == 0:
 7             return True
 8 
 9         reversed_num = 0
10         while x > reversed_num:
11             reversed_num = x % 10 + reversed_num * 10
12             x //= 10
13 
14         return (reversed_num == x) ^ (reversed_num // 10 == x)

 

leetcode9. 回文数 🌟

原文:https://www.cnblogs.com/catyuang/p/11107695.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!