如果当前字符流没有存在出现一次的字符,返回#字符。
IDEA
每次插入一个字符,就进行判断。
用map来存储该出入的字符,list存储字符流(用于按顺序查找出第一个出现的字符)
CODE
import java.util.HashMap;import java.util.ArrayList;public class Solution { HashMap<Character,Integer> map=new HashMap<Character,Integer>(); ArrayList<Character> list=new ArrayList<Character>(); //Insert one char from stringstream public void Insert(char ch) { if(map.containsKey(ch)){ map.put(ch,map.get(ch)+1); }else{ map.put(ch,1); } list.add(ch); } //return the first appearence once char in current stringstream public char FirstAppearingOnce() { char ch='#'; for(char c:list){ if(map.get(c)==1){ ch=c; break; } } return ch; }}
新闻热点
疑难解答