题解 | #字符流中第一个不重复的字符#

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

https://www.nowcoder.com/practice/00de97733b8e4f97a3fb5c680ee10720

class Solution
{
public:
  //Insert one char from stringstream
    void Insert(char ch) {
        counts[ch]++;
        que.push(ch);
        while (!que.empty() && counts[que.front()] > 1) {
            que.pop();
        }
    }
  //return the first appearence once char in current stringstream
    char FirstAppearingOnce() {
        if (que.empty()) {
            return '#';
        }
        return que.front();
    }
private:
    vector<int> counts = vector<int>(128, 0); // 牛客c++版本较低,应该这样初始化
    queue<char> que;
};

全部评论

相关推荐

不愿透露姓名的神秘牛友
04-30 18:05
空屿编号:你把墨镜摘下来是不是这样😭
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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