5.最长回文子串

问题描述:找出字符串中最长的回文子串

输入:字符串s

输出:输出最长的回文子串

————————————————————

思考:

1、最直接的就是以一个字符或者两个字符为中心,两边扩散,直到遇到不同的字符串为止。以一个字符为中心,那么就是aba型,两个字符为中心就是abba型。

class Solution:
    def longestPalindrome(self, s:str)->str:
        n=len(s)
        count=0
        res=''
        for i in range(n):
            # aba
            j,k=i,i
            while j>=0 and kcount:
                        count=k-j+1
                        res=s[j:k+1]
                    j-=1
                    k+=1
                else:
                    break
            # abba
            j,k=i,i+1
            while j>=0 and kcount:
                        count=k-j+1
                        res=s[j:k+1]
                    j-=1
                    k+=1
                else:
                    break
        return res

 

你可能感兴趣的:(leetcode学习)