[Leetcode]2.第一个只出现一次的字符
题目:在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。
输入:s = "abaccdeff"
输出:'b'
输入:s = ""
输出:' '
算法思想:遍历整个字符串,将出现的字符对应减去'a'的ASCII码,转为0-25的数字,存入数组中.再遍历整个字符串(以字符串的顺序),将首个遇到的数组元素为1的字符输出.
func firstUniqChar(s string) byte {
cnt := [26]int{}
for _, ch := range s {
cnt[ch-'a']++
}
for _,ch := range s {
if cnt[ch - 'a'] == 1 {
return byte(ch)
}
}
return ' '
}
题目来源:https://leetcode-cn.com/problems/di-yi-ge-zhi-chu-xian-yi-ci-de-zi-fu-lcof/

浙公网安备 33010602011771号