最近在找工作,投了百词斩,收到笔试通知,话不多说,上题吧。
题目比较简单,就1道算法题/30min,因为本人python还可以,用的python3.5环境。
题目要求,输入字母,输出不重复字母及对应次数,无空格,要求输入100个内。
示例:
# 输入字母,输出压缩后的字母及出现次数 if __name__ == '__main__': s1 = input('请输入英文字母(数量100内):') s1 = s1.lower() # print(s1) if len(s1) > 100: raise Exception('数量超100') s2 = list(s1) # print(num_list) for i in range(len(s2)): for j in s2: if j in [str(x) for x in range(10)]: s2.remove(j) # print(s2) count = {} keys = [] for i in s2: if i not in count.keys(): count[i] = 1 count[i] += 1 if ' ' in count.keys(): del count[' '] for k in count.keys(): keys.append(k) keys.sort() res = '' for k in keys: cou = str(count[k]) res += k + cou print(res)
答题比较紧张,算法不是太熟,后悔没刷题,条件100个没顾及到,凉了。
全部评论
(1) 回帖