自学内容网 自学内容网

Leetcode 9. 回文数

9. 回文数

一、题目描述

给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。

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

  • 例如,121 是回文,而 123 不是。

示例 1:
输入:x = 121
输出:true

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

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

提示:

  • -2^31 <= x <= 2^31 - 1

二、我的想法

转成字符串然后while循环

class Solution:
    def isPalindrome(self, x: int) -> bool:
        xStr = str(x)
        first, last = 0, len(xStr) - 1
        while first <= last:
            if xStr[first] != xStr[last]:
                return False
            else: 
                first += 1
                last -= 1
        return True  

三、其他人的题解

hello_newlife 这哥们的题解真的牛 Python一行解决

class Solution:
    def isPalindrome(self, x: int) -> bool:
        return str(x) == str(x)[::-1]

原文地址:https://blog.csdn.net/li_yizhixiaowukong/article/details/140553545

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!