125. 验证回文串 简单
给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。
说明:本题中,我们将空字符串定义为有效的回文串。
示例 1:
输入: "A man, a plan, a canal: Panama"
输出: true
示例 2:
输入: "race a car"
输出: false
代码参考:
package main
import (
"fmt"
"strings"
)
func main() {
fmt.Println(isPalindrome("0P"))
}
// 辣鸡解法
// TODO: 优化效率
func isPalindrome(s string) bool {
s = strings.ToLower(s)
str := ""
for _, r := range s {
if r >= 'a' && r <= 'z' || r >= '0' && r <= '9' {
str += string(r)
}
}
head, tail := 0, len(str)-1
for head < tail {
if str[head] != str[tail] {
return false
}
head++
tail--
}
return true
}
最后编辑: kuteng 文档更新时间: 2021-06-05 10:16 作者:kuteng