字串中的第一個唯一字元 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;
}
}
總結:更有經驗了,看到了筆記思路後就自己寫出來了程式碼