Python解法:哈希

class Solution:
    def FirstNotRepeatingChar(self, s):
        # write code here
        l=[0]*256
        for i in s:#记录每个字符出现的次数
            l[ord(i)]+=1
        for j,v in enumerate(s):#再按照s的顺序去查看l中次数为1的字符
            if l[ord(v)]==1:
                return j
        return -1

另外也可以借助计数字典实现,代码如下:

from collections import Counter
class Solution:
    def FirstNotRepeatingChar(self, s):
        # write code here
        dict=Counter(s)
        for j,v in enumerate(s):
            if dict[v]==1:
                return j
        return -1
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-02 18:35
简历上把1个月实习写成了3个月,会进行背调吗?
码农索隆:一个月有一个月的实习经历,三个月有三个月的实习经历
点赞 评论 收藏
分享
牛客92804383...:在他心里你已经是他的员工了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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