【发布时间】:2019-03-24 08:46:48
【问题描述】:
我正在尝试从列表中获取 5 个最常出现的元素及其出现次数。我用一个时间复杂度为 O(5*n*n) 的解决方案解决了这个问题。
是否存在时间复杂度更高的最优解?
示例输入:
[['16.37.123.153','119.222.456.130','38673','161','17','62','4646']
['16.37.456.153','119.222.123.112','56388','161','17','62','4646']..]
示例输出:
MostOccurrentElements = [['16.37.123.153','119.222.456.130','38673','161','17','62','4646']..]
Counter = [134, ..]
MostOcccurrentElements 列表的第一个元素与计数器列表的第一个元素一起。
【问题讨论】:
-
发布您的解决方案。示例问题和示例输出。
-
使用收藏库中的计数器。
-
我认为你可以通过最大堆实现获得更好的复杂性。
标签: python time element complexity-theory