判断字符串是否回文【刷题记录】

导读:本篇文章讲解 判断字符串是否回文【刷题记录】,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

一 题目描述

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

示例1 输入:“absba” 返回值:true

示例2 输入:“ranko” 返回值:false

示例3 输入:“yamatomaya” 返回值:false

示例4 输入:“a” 返回值:true

备注: 字符串长度不大于1000000,且仅由小写字母组成

二 解题思路及代码:
(一) 暴力法

class Solution:
    def judge(self , str ):
        # write code here        
        if not str:
            return True  
                   
        new_str = str[::-1]        
        return new_str == str

或者:

class Solution:
    def judge(self , str ):
        # write code here  
        if not str:
            return True
        if str==str[::-1]:
            return True

(二) 递归

参考回文链表的思路,利用递归完成…步骤如下:
1、 比对left和right是否一致
2、一致,++left, right–
3、不一致,fasle
4、left == right则退出
在这里插入图片描述

class Solution:
    def judge(self , str ):
        # write code here
        if not str:
            return True
        
        left = 0
        right = len(str)-1
        
        while left < right and left != right:
            if str[left] == str[right]:
                left += 1
                right -= 1
            else:
                return False
        return True

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/99766.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!