首先解释一下,回文串:正着读和反着读,都一样。如aba
题目:
给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。
说明:本题中,我们将空字符串定义为有效的回文串。
示例 1:
输入: "A man, a plan, a canal: Panama"
输出: true
示例 2:
输入: "race a car"
输出: false
解题思路:字符串首尾取索引,挨个取值比对,一次循环得出结果。
func isPalindrome(s string) bool {
if len(s)<=1{
return true
}
s=strings.ToLower(s)
i,j:=0,len(s)-1
for iif s[i]>='a'&&s[i]<='z' || s[i]>='0'&&s[i]<='9'{
//过滤掉其他字符串,不比对
if s[j]>='a'&&s[j]<='z' || s[j]>='0'&&s[j]<='9'{
if s[i]!=s[j]{
return false
}else{
i++
j--
}
}else{
j--
}
}else{
i++
}
}
return true
}
本文来自投稿,不代表本人立场,如若转载,请注明出处:http://www.souzhinan.com/kj/248561.html
赞 (156)
打赏 微信扫一扫
生物识别领域新宠 | 刷脸识别OUT了!掌静脉识别开启刷手时代
« 上一篇2019-12-21 22:47:30
劲嘉股份—投资者提问:“请问华大北斗有没有参与北斗导航业务?两者之间有关联吗?”
下一篇 »2019-12-22 06:05:28