美文网首页
字符流中第一个不重复的字符

字符流中第一个不重复的字符

作者: GoDeep | 来源:发表于2018-04-04 20:38 被阅读0次

    题目描述
    请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。
    输出描述:
    如果当前字符流没有存在出现一次的字符,返回#字符。

    # -*- coding:utf-8 -*-
    class Solution:
        
        d = {}
        q = []
            
        def FirstAppearingOnce(self):
            # write code here
            while self.q and (self.q[0] not in self.d or self.d[self.q[0]]!=1):
                self.q.pop(0)
            return self.q[0] if self.q else '#'
            
            
        def Insert(self, char):
            # write code here
            self.q.append(char)
            self.d[char] = self.d.get(char,0)+1
            
    
    

    相关文章

      网友评论

          本文标题:字符流中第一个不重复的字符

          本文链接:https://www.haomeiwen.com/subject/rvylhftx.html