02-05 按次数降序输出词频
题目
输入 B A B A C,按次数降序、同次数书名升序输出 A 2、B 2、C 1。先构造比较键,再用已经学过的元组排序。
推导与做法
排序时先比较次数,次数相同再比较书名。把字典项转换为 (-次数, 书名),就能用元组的升序同时表达两个要求。
输入 B A B A C,统计后得到 A:2、B:2、C:1;排序键为 (-2,A)、(-2,B)、(-1,C),输出 A 2、B 2、C 1。输出时再把负号还原,不修改字典里的真实次数。
实现与运行
查看带注释实现。实现只使用本章已经学过的语法。
在本题目录 02-05 中运行,使用已经选择的 Python 3.12 解释器。
# 使用项目解释器运行本题,题号决定执行哪一组演示。
python solution.py
查看本题运行结果
# 与上面的手算状态和题目数值逐项比较。
A 2
B 2
C 1