剑指 Offer 50. 第一个只出现一次的字符
解题思路
两次循环,第一次记录出现数字,第二次找出第一个数字为1的。
代码
class Solution {
    public char firstUniqChar(String s) {
        HashMap<Character, Boolean> map = new HashMap<>();
        char[] sc = s.toCharArray();
        for (char item : sc) {
            if (!map.containsKey(item)) {
                map.put(item, true);//出现次数为1次
            } else {
                map.put(item, false);//出现次数大于1次
            }
        }
        //找出第一个次数为1的数
        for (char item : sc) {
            if (map.get(item)) {
                return item;
            }
        }
        return ' ';
    }
}
 
                     
                     
                        
                        