给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。
案例:
s = “leetcode”
返回 0.
s = “loveleetcode”,
返回 2.
注意事项:您可以假定该字符串只包含小写字母。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/first-unique-character-in-a-string
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
思路:使用map统计单词中字母出现的字频,遍历字符串输出第一个字频为1的字符位置即可。
func firstUniqChar(s string) int {
stmp:=[]byte(s)//字符串转字节数组
sMap:=make(map[byte]int)
for _,v:=range stmp{//利用map统计字频
sMap[v]++
}
for i,v:=range stmp{//找出第一个字频为1的元素
if sMap[v]==1{
return i
}
}
return -1
}