在一个长为 字符串中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).(从0开始计数)
数据范围:,且字符串只有字母组成。
要求:空间复杂度 ,时间复杂度
int FirstNotRepeatingChar(char* str ) { // write code here int num[123]={0}; if(str==NULL||str==0) return -1; int n=strlen(str); int min=-1; int count=0; for(int i=0;i<n;i++) { num[str[i]]++; } for(int j=65;j<123;j++) { if(num[j]==1) { for(int i=0;i<n;i++) { if(str[i]==(char)j) { count++; if(count==1) { min=i; } else { if(i<min) min=i; } } } } } if(min==-1) return -1; else return min; }