C# 位運算及例項計算
阿新 • • 發佈:2021-07-19
# 給定字串統計每個字母出現次數,並按照字母頻率降序輸出
1 # 給定字串統計每個字母出現次數,並按照字母頻率降序輸出 2 def getKey(dic, value): 3 if value not in dic.values(): 4 return None 5 result = set() 6 for key in dic: 7 if dic[key]==value: 8 result.add(key) 9 return result 10 11 def count_each_char_1(string):12 res = {} 13 for i in string: 14 if i not in res: 15 res[i] = 1 # 將 鍵為i 的 加入字典 16 else: 17 res[i] += 1 18 return res 19 res = count_each_char_1('aaaaaennnabbbbsascd') 20 print(res) 21 b = len(res) 22 for i in range(b): 23 maxValue=max(res.values()) #獲取當前最大 24 result = getKey(res,maxValue) # 獲取鍵值 25 for j in result: 26 print(j,":",maxValue) 27 res.pop(j) # 刪除對應鍵值
out:
{'a': 7, 'e': 1, 'n': 3, 'b': 4, 's': 2, 'c': 1, 'd': 1}
a : 7
b : 4
n : 3
s : 2
c : 1
d : 1
e : 1
d : 1
c : 1
d : 1