您的位置:首页 > 其它

在一个字符串中找出第一次重复出现的字符

2015-09-20 22:54 381 查看
对于一个字符串,请设计一个高效算法,找到第一次重复出现的字符。

给定一个字符串(不一定全为字母)A及它的长度n。请返回第一个重复出现的字符。保证字符串中有重复字符,字符串的长度小于等于500。

测试样例:
"qywyer23tdd",11

返回:y

思路:使用一个hash数组保存每个变量是否出现过,当第一个出现过时直接返回,由于题目中指出肯定有重复的字符,所以这点不需做考虑;

代码如下:
char findFirstRepeat(string A, int n) {
int hash_arr[256] = {0};
for(int i = 0; i < n; i++)
if(hash_arr[A[i]] == 0)
hash_arr[A[i]] = 1;
else
return A[i];
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: