题目描述
在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写)
class Solution {
public:
int FirstNotRepeatingChar(string str) {
int a[58]={0}; #####建立一个数组,利用数组下表的位置来表示字母,数组值表示出现次数######
int temp,i=0,j=0;
while(str[i]!='\0'){
temp = str[i]-'A';
a[temp] +=1;
i++;
}
while(str[j]!='\0'){
temp = str[j]-'A';
if(a[temp]==1)
return j;
++j;
}
return -1;
}
};