我有一份类似字典的清单
players_score = [{'playerID': 'bondsba01', 'score': 771.0309445542441},
{'playerID': 'brookhu01', 'score': 334.40601958915977},
{'playerID': 'jamesbo01', 'score': 885.9822344322345},
{'playerID': 'hassero01', 'score': 593.022015503876},
{'playerID': 'addybo01', 'score': 785.2226861630111},
{'playerID': 'cedence01', 'score': 75.7351748570627},
{'playerID': 'eckerde01', 'score': 787.7921476129764},
{'playerID': 'wockejo01', 'score': 674.6701980001981}]
如何使用python从这里找到5个最大分数和玩家ID。谢谢
^{} module 提供了
nlargest
和nsmallest
函数来返回这样的序列段产生:
一种方法是对第一个元素进行排序,并选择在
O(n * log n)
中运行的第一个k=5
元素:但运行此任务更有效的方法是使用在
O((n-k)*logk)
中运行的最小堆:相关问题 更多 >
编程相关推荐