首页 > 学院 > 开发设计 > 正文

[LeetCode]409. Longest Palindrome

2019-11-06 07:47:58
字体:
来源:转载
供稿:网友

[LeetCode]409. Longest Palindrome

题目描述

这里写图片描述

思路

统计字符重复出现次数,然后将重复出现次数除以2向下取整,结果乘2。计算所有重复字符的结果后和远字符串长度进行比较,若小于远字符串,将结果加1,回文串最中间的字符可以是一个单独出现的字符。

代码

class Solution {public: int longestPalindrome(string s) { int count = 0, len = s.size(); unordered_map<char, int> charMap; for (int i = 0; i < len; ++i){ char temp = s[i]; ++charMap[temp]; } for (auto &p : charMap) { count += (int)(p.second / 2) * 2; } if (count < len) { ++count; } return count; }};
上一篇:个人2017年计划

下一篇:Maven 骨架浅析

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表