前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >LeetCode 9. 回文数

LeetCode 9. 回文数

作者头像
freesan44
发布2020-02-25 17:00:37
3930
发布2020-02-25 17:00:37
举报
文章被收录于专栏:freesan44

题目

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

代码语言:javascript
复制
示例 1:

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

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

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

进阶:

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

答题思路

字符串方法,用逆序字符串输出然后判断是否相等 非字符串方法,判断值最后一位是否等于对应位置的数,不等于就输出,减少一半计算时间

代码语言:javascript
复制
class Solution:
    def isPalindrome(self, x: int) -> bool:
        #字符串方法
        # y = str(x)[::-1]
        # if y == str(x):
        #     return True
        # else:
        #     return False
        #非字符串方法
        if x < 0:return False
        if x == 0:return True
        y = int()
        import math
        length = int(math.log(x, 10)) + 1
        for i in range(length//2):
            if x//10**(length - i*2 - 1) % 10 == x % 10:
                x //= 10
                print(x)
            else:
                return False
        return True
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目
  • 答题思路
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档