数据结构与算法面试题80道(17)

17:

题目:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b 

分析:这道题是2006google的一道笔试题。

 

 

#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;
}

 

posted @ 2016-03-11 14:37  dreamOwn  阅读(286)  评论(0编辑  收藏  举报