leetcode-0005 发表于 2019-03-17 | 阅读次数: 字数统计: 104 | 阅读时长 ≈ 1 123456789101112131415161718192021222324252627282930313233func longestPalindrome(s string) string { if len(s) < 2 { return s } begin, maxLen := 0, 1 for i := 0; i < len(s); { if len(s)-i <= maxLen/2 { break } b, e := i, i for e < len(s)-1 && s[e+1] == s[e] { e++ } i = e + 1 for e < len(s)-1 && b > 0 && s[e+1] == s[b-1] { e++ b-- } newLen := e + 1 - b if newLen > maxLen { begin = b maxLen = newLen } } return s[begin : begin+maxLen]}