102 - 最长回文串
题目
给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串。
在构造过程中,请注意区分大小写。比如 "Aa" 不能当做一个回文字符串。
注意: 假设字符串的长度不会超过 1010。
示例 1:
输入: "abccccdd"
输出: 7
解释: 我们可以构造的最长的回文串是"dccaccd", 它的长度是 7。
解答
可以用map,或者用数组。记录一下有没有相同的。遇到相同的就+2。
Runtime: 60 ms, faster than 74.08% of JavaScript online submissions for Longest Palindrome.
Memory Usage: 35.5 MB, less than 60.00% of JavaScript online submissions for Longest Palindrome.
这里偷了点懒,新建了58个的数组之后,里面的都是undefined,但是只要不是1,无论是第一次遇到的undefined还是有对象的0,就都令为1即可
就可以免去把数组全令0的for循环了。
最后如果还有剩下的,那么最多只能拿一个出来放在中间,因此就把结果++即可。
Runtime: 0 ms, faster than 100.00% of Go online submissions for Longest Palindrome.
Memory Usage: 2.1 MB, less than 100.00% of Go online submissions for Longest Palindrome.
Runtime: 44 ms, faster than 23.71% of Python3 online submissions for Longest Palindrome.
Memory Usage: 13.7 MB, less than 8.33% of Python3 online submissions for Longest Palindrome.
题解的方法看不太懂,所以我觉得我想的方法比题解好🙈
Last updated
Was this helpful?