<span style="font-family:Courier New;font-size:12px;">#include <iostream>
#include <string>
#include <iterator>
using namespace std;
const int CHARNUM = 256;
unsigned char firstNotRepeatingChar(const string &s);
int main()
{
string s;
cin >> s;
cout << firstNotRepeatingChar(s) << endl;
}
unsigned char firstNotRepeatingChar(const string &s)
{
if (s.size() == 0)
{
cout << "invalid input.";
return '\0';
}
unsigned charCountInString[CHARNUM];
for (auto &count : charCountInString)
{
count = 0;
}
string temp = s;
auto bIter = temp.begin();
auto eIter = temp.end();
while (bIter != eIter)
{
charCountInString[static_cast<unsigned>(*bIter)]++;
bIter++;
}
bIter = temp.begin();
while (bIter != eIter && charCountInString[*bIter] != 1)
{
bIter++;
}
if (bIter == eIter)
{
cout << "Don't have a character appear only one.";
return '\0';
}
else
{
return *bIter;
}
}</span>
剑指Offer --> Questions 35
最新推荐文章于 2022-04-16 17:33:28 发布