给你一个字符串 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.寻找两个正序数组的中位数
下一篇:leetCode算法—6. N 字形变换