给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。
案例:
s = "leetcode"
返回 0.
s = "loveleetcode",
返回 2.
注意事项:您可以假定该字符串只包含小写字母。
//方法一
func firstUniqChar(s string) int {
bt:=[]byte(s)
num := make(map[byte]int)
for i:=0;i<len(bt);i++ {
num[bt[i]]++
}
for i:=0;i<len(bt);i++ {
if num[bt[i]]==1{
return i
}
}
return -1
}
//方法二
func firstUniqChar(s string) int {
a := make([]int, 26)
for i := 0; i < len(s); i++ {
a[s[i]-'a']++
}
for i := 0; i < len(s); i++ {
if a[s[i]-'a'] == 1 {
return i
}
}
return -1
}