思路:两次遍历,第一次遍历记录字符出现的次数,第二次找到第一个没有出现的字符。
代码如下:
public char firstNotRepeat(char[]str){
if(str==null || str.length==0){
return ' ';
}
if(str.length==1){
return str[0];
}
int[] map = new int[128];
for(char c:str){
map[c]++;
}
for(char c:str){
if(map[c]==1){
return c;
}
}
return ' ';
}