📅  最后修改于: 2023-12-03 15:11:39.806000             🧑  作者: Mango
给定一个字符串,找出其中第 K 个最频繁出现的字符,并返回该字符。
def kth_most_frequent_char(s: str, k: int) -> str:
"""
找出字符串中第 K 个最频繁出现的字符
:param s: 给定字符串
:param k: 第 K 个最频繁出现的字符
:return: 第 K 个最频繁出现的字符
"""
# 统计每个字符出现的次数
char_count = {}
for char in s:
if char not in char_count:
char_count[char] = 1
else:
char_count[char] += 1
# 将字典按照值进行排序
sorted_char_count = sorted(char_count.items(), key=lambda x: x[1], reverse=True)
# 返回第 K 个元素的键值对的键
return sorted_char_count[k - 1][0]
assert kth_most_frequent_char('abbbccddddee', 1) == 'b'
assert kth_most_frequent_char('abbbccddddee', 2) == 'd'
assert kth_most_frequent_char('abbbccddddee', 3) == 'c'
assert kth_most_frequent_char('abbbccddddee', 4) == 'e'