专栏首页glm的全栈学习之路Leetcode 409. 最长回文串 (Hash)

Leetcode 409. 最长回文串 (Hash)

给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串。

在构造过程中,请注意区分大小写。比如 "Aa" 不能当做一个回文字符串。

注意: 假设字符串的长度不会超过 1010。

示例 1:

输入:
"abccccdd"

输出:
7

解释:
我们可以构造的最长的回文串是"dccaccd", 它的长度是 7。

解题思路

经典字符串 Hash

代码

class Solution {
public:
    int longestPalindrome(string s) {
        map<char,int>p;
        for(int i=0;s[i];i++)p[s[i]]++;
        int ans=0,flag=0;
        for(auto it:p)
        {
            while(it.second>=2)it.second-=2,ans+=2;
            if(it.second&&!flag)ans++,flag=1;
        }
        return ans;
    }
};

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 回忆京都

    glm233
  • Leetcode 169 多数元素

    给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。

    glm233
  • 国王游戏

    分析:贪心思想:对于每个大臣有a,b表示左右手数,可证明a*b大的放后面可得最优解

    glm233
  • 杭电--2094产生冠军

    杨鹏伟
  • 【PAT乙级】是否存在相等的差

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    喜欢ctrl的cxk
  • LeetCode 1133. 最大唯一数

    Michael阿明
  • LeetCode 168. Excel Sheet Column Title

    ShenduCC
  • 什么是比特币

    比特币首先是一种数字加密货币,用户可以通过比特币网络进行 比特币转账或商品结算,就和传统的货币一样:

    良月柒
  • Java基础12 类型转换与多态

    我们之前使用类创造新的类型(type),并使用继承来便利我们创建类的过程。我将在这一讲中深入类型,并介绍多态(polymorphism)的概念。

    Java团长
  • 全屏滑稽html源码

    雨尘

扫码关注云+社区

领取腾讯云代金券