题解 | #第一个只出现一次的字符#

第一个只出现一次的字符

https://www.nowcoder.com/practice/1c82e8cf713b4bbeb2a5b31cf5b0417c

package main


/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 
 * @param str string字符串 
 * @return int整型
*/
func FirstNotRepeatingChar( str string ) int {
    // write code here

    if len(str) == 0 {
        return -1
    }
	
    // 用切片来存储每个字符出现的次数, 字符的ascii码就是字符在切中的索引
    repeatTimes := [256]int{0}

    for i := 0; i < len(str); i++ {
        repeatTimes[str[i]]++
    } 

    for j := 0; j < len(str); j++ {
        if repeatTimes[str[j]] == 1 {
            return j
        } 
    }
    return -1
}

全部评论

相关推荐

机械打工仔:有说的你怀疑一下就行了,直接问也太实诚了
点赞 评论 收藏
分享
05-27 14:57
西北大学 golang
强大的社畜在走神:27届真不用急,可以搞点项目、竞赛再沉淀沉淀,我大二的时候还在天天打游戏呢
投递华为等公司10个岗位
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-04 14:23
steelhead:你回的有问题,让人感觉你就是来学习的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务