leetCode算法—5. 最长回文子串
2023-12-18 10:32:21
给你一个字符串 s,找到 s 中最长的回文子串。如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。
示例 1:
输入:s = “babad”
输出:“bab”
解释:“aba” 同样是符合题意的答案。
示例 2:
输入:s = “cbbd”
输出:“bb”
提示:
1 <= s.length <= 1000
s 仅由数字和英文字母组成
解法:
const longestPalindrome = function (s) {
if (s < 2) return s;
let res = "";
const len = s.length;
for (let i = 0; i < len; i++) {
if (res.length === len) break;
helper(i, i);
if (s[i] === s[i + 1]) {
helper(i, i + 1);
}
}
function helper(l, r) {
while (l >= 0 && r < len && s[l] === s[r]) {
l--;
r++;
}
if (r - l - 1 > res.length) {
res = s.slice(l + 1, r);
}
}
return res;
};
上一篇:leetCode算法—4.寻找两个正序数组的中位数
下一篇:
文章来源:https://blog.csdn.net/weixin_43169949/article/details/135054772
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!