面试题目: 第一个非重复的字符
面试官: 看你的简历还不错,本科也是学的计算机专业,要不咱们先做道题.
我: (瑟瑟发抖)好.
面试官: 给你一个字符串,请找出第一个只出现一次的字符.
我: 我思考一下,如果不存在只出现一次的字符,返回什么?
面试官: 返回空’ '.顺便说一下,字符串中只包含acii码字符.
我: (内心独白:这个题目简单啊,可以直接暴力,管他呢,先给出一个暴力解) ok. 我可以用一个两层循环,第一层遍历每一个字符,第二层判断是否出现一次,如果是,因为我是从从遍历,可以直接返回这个结果.
面试官: 恩,不错,可以解决这个问题,请给我代码吧.
我: 您看下这个代码.
char first_char_1(string s) {
if(s.size() == 0) return ' ';
if(s.size() == 1) return 1;
char ans = ' ';
for(int i = 0; i < s.size(); i++) {
int k = 0;
for(int j = 0; j < s.size(); j++) {
if(s[i] == s[j]) k ++;
}
if(k == 1) {
ans =