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

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

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

#include <unordered_map>
class Solution {
 public:
  queue<char> qu;
  unordered_map<char, int> umap;
  //Insert one char from stringstream
  void Insert(char ch) {
    if (umap.find(ch) == umap.end()) {
      umap.insert({ch, 1});
      qu.push(ch);
    } else {
      umap[ch]++;
    }
  }
  //return the first appearence once char in current stringstream
  char FirstAppearingOnce() {
    int i = 0;
    int qsize = qu.size();
    while (i < qsize) {
      char front_value = qu.front();
      if (umap[front_value] != 1) {
        qu.pop();
        i++;
        continue;
      } else {
        return front_value;
      }
      i++;
    }
    return '#';
  }

};

全部评论

相关推荐

10-28 11:04
已编辑
美团_后端实习生(实习员工)
一个2人:我说几个点吧,你的实习经历写的让人觉得毫无含金量,你没有挖掘你需求里的 亮点, 让人觉得你不仅打杂还摆烂。然后你的简历太长了🤣你这个实习经历看完,估计没几个人愿意接着看下去, sdk, 索引这种东西单拎出来说太顶真了兄弟,好好优化下简历吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务