zoukankan      html  css  js  c++  java
  • 409. Longest Palindrome

    Given a string which consists of lowercase or uppercase letters, find the length of the longest palindromes that can be built with those letters.
    
    This is case sensitive, for example "Aa" is not considered a palindrome here.
    
    Note:
    Assume the length of given string will not exceed 1,010.
    
    Example:
    
    Input:
    "abccccdd"
    
    Output:
    7
    
    Explanation:
    One longest palindrome that can be built is "dccaccd", whose length is 7.
    public int longestPalindrome(String s) {
            if (s == null || s.length() == 0) {
                return 0;
            }
            HashMap<Character, Integer> map = new HashMap<>();
            for (int i = 0; i < s.length(); i++) {
                map.put(s.charAt(i), map.getOrDefault(s.charAt(i), 0) + 1);
            }
            int ans = s.length(), sum = 0, max = 0;
            for (Map.Entry<Character, Integer> entry : map.entrySet()) {
                if (entry.getValue() % 2 == 1) {
                    //max = Math.max(max, entry.getValue());
                    sum++;
                }
            }
            ans = sum == 0 ? ans : ans - sum  + 1;
            return ans;
        }
    

    Map.Entry<> entry : map.entrySet()

  • 相关阅读:
    中间件格式
    python3 bytes与str数据类型相互转换
    python 连接mongodb 使用
    md5 简单加密
    django 使用https协议运行runserver
    工厂模式
    C++字符串
    C++字符
    C++数学函数
    MATLAB函数总结——数值运算和符号运算
  • 原文地址:https://www.cnblogs.com/apanda009/p/7181984.html
Copyright © 2011-2022 走看看