第17题:
题目:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。
分析:这道题是2006年google的一道笔试题。
#include<cstring> #include<iostream> using namespace std; int cnt[260];//字符转换成整形,0~255,统计他们的各数 void onlyOne(string str){ int i; for(i=0;i<260;i++) cnt[i]=0; for(i=0;i<str.length();i++) cnt[(int)str[i]]++; for(i=0;i<255;i++) if(cnt[i]==1) cout<<(char)i<<" "; cout<<endl; } int main(){ string str="abaccdeff"; onlyOne(str); return 0; }