找到尽可能长的回文串,JavaScript
给定一个字符串 s,其中包含小写或大写字母,我们需要返回可以使用这些字母构建的最长回文串的长度。字母区分大小写,例如,“Aa”在这里不被视为回文串。
例如 −
如果输入字符串为 −
const str = "abccccdd";
则输出应为 7,
因为可以构建的最长回文串之一是“dccaccd”,其长度为 7。
示例
const str = "abccccdd"; const longestPalindrome = (str) => { const set = new Set(); let count = 0; for (const char of str) { if (set.has(char)) { count += 2; set.delete(char); } else { set.add(char); } } return count + (set.size > 0 ? 1 : 0); }; console.log(longestPalindrome(str));
输出
而控制台中的输出将为 −
7
广告