646 · 第一个独特字符位置
描述
给出一个字符串。找到字符串中第一个不重复的字符然后返回它的下标。如果不存在这样的字符,返回 -1。
样例
样例 1:
输入 : s = “lintcode”
输出 : 0
样例 2:
输入 : s = “lovelintcode”
输出 : 2
public class Solution {
/**
* @param s: a string
* @return: it's index
*/
public int firstUniqChar(String s) {
// write your code here
Map<Character , Integer> map = new HashMap<Character, Integer>() ;
for(char c : s.toCharArray()){
if(map.containsKey(c)){
map.put(c , map.get(c)+1) ;
}else{
map.put(c , 1) ;
}
}
for(int i = 0 ; i < s.length() ; i++){
if(map.get(s.charAt(i)) == 1){
return i ;
}
}
return -1 ;
}
}