题解 | #第一个只出现一次的字符#
第一个只出现一次的字符
https://www.nowcoder.com/practice/1c82e8cf713b4bbeb2a5b31cf5b0417c
两次遍历解决:
第一次遍历找出那些字符是只出现一次的
第二次遍历找出这些出现一次的字符,那个是第一次出现的
public class Solution {
public int FirstNotRepeatingChar(String str) {
int[] a = new int[256];
for (int i = 0; i < str.length(); i++) {
a[str.charAt(i) - 'A']++;
}
for (int i = 0; i < str.length(); i++) {
if(a[str.charAt(i) - 'A'] == 1) {
return i;
}
}
return -1;
}
}

查看9道真题和解析