1)逐个遍历,向两边扩散。分单一扩散(奇数),和双字符扩散(偶数)两种情况考虑
时间复杂度较高
class Solution: def longestpalindrome(self, s: str) -> str: length = len(s) maxlength = 0 for i in range(length): l = i r = i while l >= 0 and r < length and s[l] == s[r]: if maxlength < len(s[l:r+1]): maxlength = len(s[l:r+1]) result = s[l:r+1] l -= 1 r += 1 l = i r = i+1 while l >= 0 and r < length and s[l] == s[r]: if maxlength < len(s[l:r+1]): maxlength = len(s[l:r+1]) result = s[l:r+1] l -= 1 r += 1 return result
总结
以上是内存溢出为你收集整理的leetcode-python-最长回文串全部内容,希望文章能够帮你解决leetcode-python-最长回文串所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)