leetcode-409

这个题考察的是什么贪心,如果能一眼看出贪心也算可以了。贪心一步迭代很少见。

func longestPalindrome(s string) int {
    var count [128]int
    len := 0
    for _, v := range s {
        count[v]++
    }
    for _, v := range count {
        len += v / 2 * 2
        if v%2 == 1 && len%2 == 0 {
            len++
        }
    }
    return len
}

有一些巧妙的地方,自己debug几次就知道了。

一个没有高级趣味的人。 email:hushui502@gmail.com
原文地址:https://www.cnblogs.com/CherryTab/p/12528191.html