美文网首页
[2021-09-08][入门][NC141]判断回文

[2021-09-08][入门][NC141]判断回文

作者: 许忠慧 | 来源:发表于2021-09-08 18:36 被阅读0次

    题目来源:牛客网

    描述

    给定一个字符串,请编写一个函数判断该字符串是否回文。如果回文请返回true,否则返回false。
    例如

    输入: "absba"
    返回:true
    
    输入: "ranko"
    返回: false
    
    输入: "yamatomaya"
    返回: false
    
    输入: "a"
    返回: true
    

    解题思路:

    1、先对字符串去重,如果去重后只剩下一个字符,说明原字符串只有一个字符或者是由全部都一样的单字符组成,这种情况可以直接返回true,python有一个set函数刚好可以用到
    2、然后对取字符串长度的前一半和后一半(反转)进行对比,如果一样返回true,反之返回false。如果字符串的长度是基数很好取,直接len(str)/2即可;如果是基数则需要取整一下,把正中间的字符空出来

    题解:

    class Solution:
        def judge(self , str ):
            if len(set(str)) == 1:
                return True
            l = int(len(str)/2)
            return str[:l] == str[l+1:][::-1]
    

    相关文章

      网友评论

          本文标题:[2021-09-08][入门][NC141]判断回文

          本文链接:https://www.haomeiwen.com/subject/kgovwltx.html