import java.util.*; public class Solution { // 字符流中第一个不重复的字符 // 第一个,要保证有序;不重复要统计数量 ArrayList<Character> list = new ArrayList<>(); public void Insert(char ch) { list.add(ch); } public char FirstAppearingOnce() { HashMap<Character,Integer> map = new HashMap<>(); for(int i = 0; i < list.size(); i++){ char c = list.get(i); if(map.containsKey(c)){ map.put(c, map.get(c) + 1); }else{ map.put(c,1); } } // 当全都是重复字符时,res = '#'; char res = '#'; for(char c : list){ if(map.get(c) == 1){ res = c; break; } } return res; } }