字符流中的第一个非重复字符例如,当只从字符流中读取前两个字符“go”时,第一个只出现一次的字符是“g”。当从这个字符流中读取前六个字符“google”时,第一个只出现一次的字符是“l”。题目链接:字符流中第一个不重复字符代码importjava.util.LinkedList;importjava.util.Queue;/***题目:字符流中第一个不重复字符*题目描述*请执行查找字符流中仅出现一次的第一个字符的函数。例如,当只从字符流中读取前两个字符“go”时,*第一个只出现一次的字符是“g”。当从这个字符流中读取前六个字符“google”时,第一个只出现一次的字符是“l”。*问题链接:*https://www.nowcoder.com/practice/00de97733b8e4f97a3fb5c680ee10720?tpId=13&&tqId=11207&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking*/publicclassJz54{privateint[]cnts=newint[256];私人队列<字符>队列=新链表<>();//从字符串流中插入一个字符publicvoidinsert(charch){cnts[ch]++;队列。添加(通道);while(!queue.isEmpty()&&cnts[queue.peek()]>1){queue.poll();}}//返回当前字符串流中第一次出现一次的字符publiccharfirstAppearingOnce(){returnqueue.isEmpty()?'#':queue.peek();}publicstaticvoidmain(String[]args){}}【每日留言】愿你昨晚的坏心情今天一扫而光,一拉幕就毫无征兆。
