题目描述
对于一个字符串,请设计一个高效算法,找到第一次重复出现的字符。
给定一个字符串(不一定全为字母)A及它的长度n。请返回第一个重复出现的字符。保证字符串中有重复字符,字符串的长度小于等于500。
测试样例:
"qywyer23tdd",11
返回:y
题目来源:去哪儿
查找第一个出现重复的字符,看下面一个例子:
"kdbaaak", 7
输出的是a,并不是k,因为从前往后遍历过程中,a是第一次出现重复的。
运用python的字典操作即可。
# -*- coding:utf-8 -*-
class FirstRepeat:
def findFirstRepeat(self, A, n):
# write code here
if len(A) == 0:
return None
d = dict()
for x in A:
if d.get(x) is None:
d[x] = 1
else:
return x