一、用散列表的思想可快速解决;
二、代码:
#include<stdlib.h>
#include<stdio.h>
#include<string>
#include<vector>
using namespace std;
char findUni(string s) {
vector<int> abc(26,0);
for (string::iterator ite = s.begin(); ite != s.end(); ite++)
{
int addr = *ite - 'a';
abc[addr] = abc[addr] + 1;
}
int k=0;
for (int i = 0; i < 26; i++) {
if (abc[i] == 1)
{
k = i;
}
}
return char(k+'a');
}
int main() {
string s = "mililoo";
char ans;
ans = findUni(s);
printf("%c", ans);
system("pause");
return 0;
}
三、运行结果: