美文网首页
2019-09-13[剑指offer-]字符流中第一个不重复的字

2019-09-13[剑指offer-]字符流中第一个不重复的字

作者: Coding破耳 | 来源:发表于2019-12-04 22:57 被阅读0次

    题目描述

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

    class Solution
    {
    public:
        list<char> que;
      //Insert one char from stringstream
        void Insert(char ch)
        {
            list<char>::iterator iterfind = find(que.begin(),que.end(),ch);
            if( iterfind == que.end())
            {
                que.push_back(ch);
            }
            else
            {
                que.erase(iterfind);
            }
        }
      //return the first appearence once char in current stringstream
        char FirstAppearingOnce()
        {
            if(que.size() == 0)
            {
                return '#';
            }
            return que.front();
        }
    
    };
    

    相关文章

      网友评论

          本文标题:2019-09-13[剑指offer-]字符流中第一个不重复的字

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