func longestPalindrome(s string) int {
if len(s) == 0 { // 判断零值
return 0
}
result := 0
mi := make(map[rune]int) // 使用额外的数据结构
for _,v := range s {
mi[v]++
}
for _,v := range mi {
result += (v/2)*2// 无论是奇数既或者是偶数用 v/2 * 2 都是取出来的偶数个。
}
if result < len(s) { // 就是偶数个都找到了,如果有多的几个奇数,那么取出来一个放到中间即可。
result +=1
}
return result
}