题目链接:https://leetcode-cn.com/problems/longest-palindrome/
题目如下:
class Solution {
public int longestPalindrome(String s) {
int len=s.length();
int[][] array=new int[2][26];//数组存放每个字母出现的个数
int count=0;
int flag=0;//用于标记是否出现奇数次
for(int i=0;i<len;i++){
if(s.charAt(i)>='a'&&s.charAt(i)<='z') array[0][s.charAt(i)-97]++;
else if(s.charAt(i)>='A'&&s.charAt(i)<='Z') array[1][s.charAt(i)-65]++;
}
for(int i=0;i<2;i++)
for(int j=0;j<26;j++){
if(array[i][j]%2==0) count+=array[i][j];//偶数正常计算
else {//出现次数为奇数 1,3,5,7,9
count+=array[i][j]-1;
flag=1;
}
}
if(flag==1) count+=1;
return count;
}
}