题目
在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。
思路
直接见代码了,这题很简单,继续复习map的应用,记得哈希表的时间复杂度是O(1)
代码
class Solution {
public:
char firstUniqChar(string s) {
map<char,int> m;
int len = s.size();
//第一轮遍历,统计
for(int i = 0;i < len;i++){
m[s[i]]++;
}
//第二轮遍历,找到首个只出现一次的
for(int i = 0;i < len;i++){
if(m[s[i]] == 1){
return s[i];
}
}
return ' ';
}
};