class Solution:
def longestPalindrome(self, s: str) -> str:
if not s:
return ""
def expandAroundCenter(left: int, right: int) -> str:
while left >= 0 and right < len(s) and s[left] == s[right]:
left -= 1
right += 1
return s[left+1:right]
longest = ""
for i in range(len(s)):
# 奇数回文
odd = expandAroundCenter(i, i)
# 偶数回文
even = expandAroundCenter(i, i+1)
# 更新最长回文
longest = max(longest, odd, even, key=len)
return longest
python-leetcode-最长回文子串
最新推荐文章于 2025-08-04 20:35:07 发布