字符串中的第一个唯一字符 leetcode 242
题目大意:给定一个字符串,找出第一个唯一的字符的下标,找不到就返回-1
解题思路:使用一个hashMap,key位字符,value为字符是否中该map中,是的话给false,最终用字符串下标遍历该map,如果有为true的直接返回当前下标即可
class Solution {public int firstUniqChar(String s) {Map<Character, Boolean> dic = new HashMap<>();char[] sc = s.toCharArray();for (char c : sc){dic.put(c, !dic.containsKey(c));}for (int i = 0; i < sc.length; i ++){if (dic.get(sc[i])) return i;}return -1;}
}
总结:更有经验了,看到了笔记思路后就自己写出来了代码