题目链接
题目描述
给定一个字符串 s
,找到 s
中最长的回文子串。你可以假设 s
的最大长度为 1000。
示例 1:
1 | 输入: "babad" |
示例 2:
1 | 输入: "cbbd" |
解答
方法一
遍历字符串s的所有子串,判断是否为回文串。找出长度最大的回文串。
1 | class Solution: |
方法二
回文串是对称的,长度为奇数的回文串对称位置是中间的字符,偶数对称位置是中间2个字符间的空隙。可以遍历每个字符和中间位置,同时向左和右扩展,直到字符不同,或达到边界。为了不分奇偶情况讨论,在字符间填充符号#
,遍历每个位置。
1 | class Solution: |