美文网首页
5. 最长回文子串-leetCode&python

5. 最长回文子串-leetCode&python

作者: 冷多多 | 来源:发表于2022-11-13 11:27 被阅读0次

    1、题目
    给你一个字符串 s,找到 s 中最长的回文子串。
    示例1:
    输入:s = "babad"
    输出:"bab"
    解释:"aba" 同样是符合题意的答案
    示例2:
    输入:s = "cbbd"
    输出:"bb"

    2、代码

    class Solution(object):
        def longestPalindrome(self, s):
            """
            :type s: str
            :rtype: str
            """
            len_s=len(s)
            sub_s=''
            len_sub=0
            for i in range(0,len_s,1):
                for j in range(i+1,len_s,1):
                    tmp_s=s[i:j+1]
                    flag=1;ti=i;tj=j
                    while s[ti]==s[tj]:
                        ti=ti+1;tj=tj-1;
                        if ti>=tj:
                            flag=0
                    if (flag==0) and (len(tmp_s)>len_sub):
                        sub_s=tmp_s;len_sub=len(tmp_s)
            return sub_s;
    

    3、测试用例

        s=Solution()
        ts="babad"
        res=s.longestPalindrome(ts)
        print(res)
    

    相关文章

      网友评论

          本文标题:5. 最长回文子串-leetCode&python

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