应该不用写啥。
也可以用有序哈希表LinkedHashMap,第二遍遍历哈希表。
剑指 Offer 50. 第一个只出现一次的字符
class Solution { public char firstUniqChar(String s) { Map<Character, Boolean> dic = new HashMap<>(); char[] sc = s.toCharArray(); //第一遍遍历,给hash表赋值,出现过多次value为False for(char c : sc) dic.put(c, !dic.containsKey(c)); for(char c : sc) //第二次遍历字符数组,找到一个Value为True的字符返回 if(dic.get(c)) return c; //不知道返回啥就看看返回类型 return ' '; } }