描述
在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).(从0开始计数)
示例1
输入:
"google"
复制返回值:
4
public class Jz34_FirstNotRepeatingChar {
public int FirstNotRepeatingChar(String str) {
char[] chars = str.toCharArray();
HashMap<Character, Integer> count = new HashMap<>();
for (char aChar : chars) {
if (count.containsKey(aChar)) {
count.put(aChar, count.get(aChar) + 1);
} else {
count.put(aChar, 1);
}
}
for (int i = 0; i < chars.length; i++) {
if (count.containsKey(chars[i]) && count.get(chars[i]) == 1) {
return i;
}
}
return -1;
}
}