题目
给你一个字符串 s
,找到 s
中最长的回文子串。
如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。
示例
示例1
输入:s = "babad"
输出:"bab"
解释:"aba" 同样是符合题意的答案。
示例2
输入:s = "cbbd"
输出:"bb"
提示
- 1 <= s.length <= 1000
- s 仅由数字和英文字母组成
题解
class Solution {
public:
string longestPalindrome(string s) {
string res;
for (int i = 0; i < s.size(); i ++ ) {
int l = i - 1, r = i + 1; // 12321
while (l >= 0 && r < s.size() && s[l] == s[r]) l --, r ++ ;
if (res.size() < r - l - 1) res = s.substr(l + 1, r - l - 1);
l = i, r = i + 1; // 123321
while (l >= 0 && r < s.size() && s[l] == s[r]) l --, r ++ ;
if (res.size() < r - l - 1) res = s.substr(l + 1, r - l - 1);
}
return res;
}
};
标签:005,示例,res,&&,字符串,回文,LeetCode,size
From: https://www.cnblogs.com/yuyork/p/16988486.html