【发布时间】:2020-12-04 01:36:39
【问题描述】:
我目前正在为此使用 Counter() 方法。但是我面临的问题是,当有多个元素具有相同数量的值时,我会得到列表中第一个出现的数字的 out of key value。
a=[1,3,2,2,3]
coun=Counter(a)
print(coun.most_common(1))
输出:[(3,2)]
a=[1,2,3,2,3]
coun=Counter(a)
print(coun.most_common(1))
输出:[(2,2)]
我想获得较低的键值,而不是第一个出现的键值,即此处的 2 与顺序无关。我可以对列表进行排序,但我认为排序会占用大量时间。 请帮忙 很抱歉格式混乱。
【问题讨论】:
-
对列表进行排序不是问题,除非它真的很大(100k+ 项)。即使那样我也会测试它是否会很慢
-
@Exelian 是的。根据测试用例,我相信输入列表相当大,所以我不想冒险搜索是否有更简单的方法
标签: python python-3.x list counter