5. 最长回文子串
【摘要】 5. 最长回文子串题目给你一个字符串 s,找到 s 中最长的回文子串。示例 1:输入:s = "babad"输出:"bab"解释:"aba" 同样是符合题意的答案。示例 2:输入:s = "cbbd"输出:"bb"示例 3:输入:s = "a"输出:"a"示例 4:输入:s = "ac"输出:"a"提示:1 <= s.length <= 1000s 仅由数字和英文字母(大写和/或小写)组成解...
5. 最长回文子串
题目
给你一个字符串 s,找到 s 中最长的回文子串。
示例 1:
输入:s = "babad"
输出:"bab"
解释:"aba" 同样是符合题意的答案。
示例 2:
输入:s = "cbbd"
输出:"bb"
示例 3:
输入:s = "a"
输出:"a"
示例 4:
输入:s = "ac"
输出:"a"
提示:
- 1 <= s.length <= 1000
- s 仅由数字和英文字母(大写和/或小写)组成
解答(C++)
方法一【暴力】
class Solution {
public:
bool isPalindromicSubstring(string s) {
int left = 0;
int right = s.length() - 1;
while(left < right) {
if(s[left] != s[right]) {
return false;
} else {
++left;
--right;
}
}
return true;
}
string longestPalindrome(string s) {
int n = s.length();
int maxLength = 0;
string ans;
for(int i = 0; i < n; ++i) {
for(int j = i; j < n; ++j) {
string temp = s.substr(i, j-i+1);
if(isPalindromicSubstring(temp) && j-i+1 > maxLength) {
ans = temp;
maxLength = j - i + 1;
}
}
}
return ans;
}
};

解答(Python)
【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)