链接: https://leetcode-cn.com/problems/first-unique-character-in-a-string/
给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。
案例:
s = “leetcode”
返回 0.
s = “loveleetcode”,
返回 2.
思路一:
遍历两次, 第一次遍历将字符出现的次数保存在哈希表当中。第二次遍历找出第一个出现次数为1的字符的索引。
C++实现
int firstUniqChar(string s) {
int hashTable[26] = {0};
for (int i = 0; i < s.size(); i++) {
hashTable[s[i]-'a']++;
}
for (int i = 0; i < s.size(); i++) {
if(hashTable[s[i]-'a'] == 1) {
return i;
}
}
return -1;
}