劍指offer——字元流中第一個不重複的字元C++
阿新 • • 發佈:2021-01-05
技術標籤:劍指Offer#字串資料結構字串演算法劍指offer
直接圖方便了,來一個string和一個map,每次insert就加在s後面,並記錄該字元出現次數。在first函式中,遍歷該字元,找到第一個出現一次的返回即可。
class Solution
{
public:
//Insert one char from stringstream
void Insert(char ch)
{
s += ch;
ma[ch]++;
}
//return the first appearence once char in current stringstream
char FirstAppearingOnce()
{
for(int i = 0; i < s.length(); ++i){
if(ma[s[i]] == 1) return s[i];
}
return '#';
}
private:
string s;
map<char,int> ma;
};