题目:跳转至 387. 字符串中的第一个唯一字符
给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。
示例:
s = “leetcode”
返回 0
s = “loveleetcode”
返回 2
提示:
你可以假定该字符串只包含小写字母。
class Solution {
public:
int firstUniqChar(string s) {
}
};
思路:
简单的有点恍惚,如果没有提示中只包含小写字母就哈希表,说了只有26位那就直接列表了。
class Solution {
public:
int firstUniqChar(string s) {
vector<int> countc(26,0);
for(int i=0;i<s.length();++i)
++countc[s[i]-'a'];
for(int i=0;i<s.length();++i)
if(countc[s[i]-'a']==1)
return i;
return -1;
}
};
好久不见困难了。