精华内容
下载资源
问答
  • 回文数 python

    2020-09-29 19:56:30
    回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数...

    作者:CYL

    日期:2020-9-29

    标签:数字 字符串 简单

    题目描述

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

    示例

    示例 1:

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

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

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

    解题思路

    利用字符串倒序 比较倒序后的与倒序前的是否相等

    代码

    class Solution(object):
        def isPalindrome(self, x):
            """
            :type x: int
            :rtype: bool
            """
            if x<0 :
                return False
            else:
                x_str = str(x)
                x_rev = x_str[::-1]
                if x_str == x_rev:
                    return True
                else:
                    return False
    
    展开全文
  • leetcode第九题:回文数 python 判断一个整数是否是回文数回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 ...

    @leetcode中第九题回文数做的过程中遇到的坑 python

    leetcode第九题:回文数 python

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

    示例 1:

    输入: 121
    输出: true

    示例 2:

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

    示例 3:

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

    刚开始刷leetcode,这道题看似简单,思路也应该很清晰,但是我在做的过程中,用pycharm写出来后运行就是正确的结果,在leetcode上运行,当有负数测试用例时,结果总会出现一个true????这是怎么回事???经过好心人帮助,发现其实这个题最后返回的应该是bool值,所有在返回时候,flag 应该用大写True和False (但是他测试用例上是true和false)

    代码如下

    def isPalindrome(self, x):
        """
        :type x: int
        :rtype: bool
        """
        a = str(x)
        flag = True
        if len(a) == 1:
            return flag
        else:
            if len(a) > 1:
                i = 0
                j = len(a) - 1
                while i <= (len(a) // 2) + 1:
                    while i <= j:
                        if a[i] == a[j]:
                            i += 1
                            j -= 1
                        else:
                            flag = False
                            break
                    return flag
    
    展开全文
  • 基础练习 特殊回文数 python 在做这道题时,我的代码(注释部分)一直超时。后来我算了一下我的时间复杂度,虽然我只用了一层循环,也就是O(n),但是它循环了1000000-10001=989999次。后来我突然想到它是回文数,...

    基础练习 特殊回文数 python

    在这里插入图片描述
    在做这道题时,我的代码(注释部分)一直超时。后来我算了一下我的时间复杂度,虽然我只用了一层循环,也就是O(n),但是它循环了1000000-10001=989999次。后来我突然想到它是回文数,最大也就六位还是两边对称的情况,我可以把每一位拆开看每一位可能的数字只有10个,排列前半部分即使有三层循环,但也只需要循环1000次,这样就大大减少了时间。
    代码如下:

    # import datetime
    # start = datetime.datetime.now()
    
    # n = eval(input())
    # for i in range(10001, 1000000):
    #     a = i // 100000
    #     b = (i // 10000) % 10
    #     c = (i // 1000) % 10
    #     d = (i // 100) % 10
    #     e = (i // 10) % 10
    #     f = i % 10
    #     sum = a + b + c + d + e + f
    #     if a == 0:
    #         if b != f or c != e:
    #             continue
    #     else:
    #         if a != f or b != e or c != d:
    #             continue
    #     if sum == n:
    #         print(i)
    
    # end = datetime.datetime.now()
    # print (end-start)
    
    n = eval(input())
    
    if n % 2 == 1:
        for a in range(1, 10):
            for b in range(10):
                for c in range(10):
                    if (a + b) * 2 + c == n:
                        res = str(a) + str(b) + str(c)
                        print(res + res[1::-1])
    else:
        for a in range(1, 10):
            for b in range(10):
                for c in range(10):
                    if (a + b) * 2 + c == n:
                        res = str(a) + str(b) + str(c)
                        print(res + res[1::-1])
        for a in range(1, 10):
            for b in range(10):
                for c in range(10):
                    if (a + b + c) * 2 == n:
                        res = str(a) + str(b) + str(c)
                        print(res + res[::-1])
    
    
    展开全文
  • LeetCode:回文数 Python

    2018-08-05 17:50:36
    判断一个整数是否是回文数回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为...

     

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

    示例 1:

    输入: 121
    输出: true
    

    示例 2:

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

    示例 3:

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

    进阶:

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

     

    反转x的后一半与x的前一半进行比较

    class Solution:
        def isPalindrome(self, x):
            """
            :type x: int
            :rtype: bool
            """
            if x < 0 or (x % 10 == 0 and x != 0):
                return False
            a = 0
            while x > a :
                temp = x % 10
                a = a*10 + temp
                x = x // 10
            if x==a :
                return True
            else :
                if (x*10 + temp) == a:
                    return True
                return False

     

    展开全文
  • Leetcode 9. 回文数 Python

    2019-03-08 11:02:14
    回文数 判断一个整数是否是回文数回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 ...
  • leetcode 9-回文数 python

    2018-12-19 15:32:39
    判断一个整数是否是回文数回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为...
  • 判断一个整数是否是回文数回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 ...
  • 判断一个整数是否是回文数回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1 输入: 121 输出: true 示例 2 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- ...
  • n = int(input()) temp = [] for a in range(1, 10): for b in range(10): for c in range(10): if 2 * (a + b + c) == n: ... temp.append(a * 100000 + b * 10000 + c * 1000 + c * 100 + b * 10 + a) ...
  • 1079 延迟的回文数 (20 分) 给定一个 k+1 位的正整数 N,写成 a​k​​⋯a​​1​​a​​0​​ 的形式,其中对所有 i 有 0≤a​i​​&amp;amp;lt;10 且 a​​k​​&amp;amp;gt;0。N 被称为一个回文数,当...
  • Leetcode-9 回文数 python3

    2018-08-19 21:29:08
    判断一个整数是否是回文数回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例1: 输入:121 输出:true 示例2: 输入:-121 输出:false 解释:从左向右读,为-121。从右向左读,为...
  • leetcode-9. 回文数python3

    2019-10-15 15:34:26
    判断一个整数是否是回文数回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。...
  • 【leetcode】 回文数python实现

    千次阅读 2018-05-24 21:08:16
    回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例1: 输入: 121 输出: true 示例2: 输入: -121 输出:假 解释:从左向右读,为-121。从右向左读,为121-。因此它不是一个回文数...
  • 判断一个整数是否是回文数回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为...
  • 判断一个整数是否是回文数回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。...
  • 基础练习 特殊回文数 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述  123321是一个非常特殊的数,它从左边读和从右边读是一样的。  输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字...
  • 蓝桥杯 试题 基础练习 回文数 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述  1221是一个非常特殊的数,它从左边读和从右边读是一样的,编程求所有这样的四位十进制数。 输出格式  按从小到大的顺序输出...
  • 判断一个整数是否是回文数回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。...
  • 我们只需要将头和尾一个一个比较就可以了,肯定有人在想他们个的奇偶问题,而我刚好就利用了这个奇偶问题,因为假如是5位数头尾相比较,最后会剩下中间一位,秒就秒在这里,我们利用除法取整,也可以用python的...
  • LeetCode9 回文数 Python3

    2020-10-24 09:51:54
    = result[end]): return False start=start+1 return True 数字反转,比较 python不用担心溢出 class Solution: def isPalindrome(self, x: int) -> bool: if(x): return False temp = x result=0 while(temp>0): k=...
  • leetcode 9 回文数 Python

    2018-09-06 13:28:41
    思路 如果x为负数,直接返回False,如果是个位数,则直接返回True,其他情况下先把输入的x进行翻转,然后和输入的x相比较,相同为True,不同为False 代码 def isPalindrome(self, x): ... if x...
  • LeetCode 9. 回文数 python

    2019-09-24 22:11:55
    class Solution(object): def isPalindrome(self, x): """ :type x: int :rtype: bool """ if x<0: return False x=str(x) #转化为字符串处理 ...
  • 给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。...因此它不是一个回文数。 示例 3: 输入:x = 10 输出:false 解释:从右向左读, 为 01 。因此它不是一个回文数。 示例 4: 输
  • 问题描述 1221是一个非常特殊的,它从左边读和从右边读是一样的,编程求所有这样的四位十进制。...python. for i in range(10,99+1): a = i%10 b = (i//10)%10 sum1 = b*1000+a*100+a*10+b print(sum1) ...
  • leetcode9-回文数 python

    2019-01-17 16:29:40
    方法二:双端队列:转化为list,依次弹出首尾两个  O(n^2) class Solution: def isPalindrome(self, x): """ :type x: int :rtype: bool """ if x return False else: still_equal=True x=list...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,272
精华内容 508
关键字:

回文数python

python 订阅