题解 | #字符统计#
字符统计
http://www.nowcoder.com/practice/c1f9561de1e240099bdb904765da9ad0
while True:
try:
S = {} #记录每个字符出现的次数
a = list(input()) #将输入的字符串转换为列表
for i in range(len(a)):
if(a[i] in S): #若是S中有,那么只是计数加一
S[a[i]] += 1
else: #S中没有,那么加入S,计数为1
S[a[i]] = 1
S = sorted(S.items(),key=lambda ele:(-ele[1],ele[0])) #对S.items排序S.items()=[(key1,value1),(key2,value2)]是个列表;-ele[1]代表先对value逆序排序,
ele[0]代表如果value相等的情况下按key的ASCLL码正向排序
res = ''
for i in range(len(S)): #按题目要求输出
res = res + S[i][0]
print(res)
except:
break
华为机试题解(prod.by kedao) 文章被收录于专栏
华为实习机试题解