LeetCode初级算法(字符串篇)-----字符串中的第一个唯一字符
题目
思路理解
哈希表存储,对比输出
注意下标:a[s[i]-‘a’] 为索引的值
代码
class Solution {
public:
int firstUniqChar(string s) {
int n = s.size();
int a[26]={0};
int index[26];
for(int i =0;i<n;i++){
a[s[i]-'a']++; //通过s[i]-'a'获取所在的位置 找到后对应字母所在位置加一
index[s[i]-'a']=i; //将索引值放入到对应位置
}
for(int i=0;i<n;i++ ){
if((a[s[i]-'a']==1)){ //判断当前索引的值是不是为1,1代表出现过,
return index[s[i]-'a']; //返回对应位置的索引序号
}
}
return -1;
}
};
#理解。