标签: python arrays sorting
我有两个阵列说x = [110, 10, 1000 ....]和y = ['adas', 'asdasqe', 'ae1e' ....]
x = [110, 10, 1000 ....]
y = ['adas', 'asdasqe', 'ae1e' ....]
这两个数组的长度相同。我的问题是打印y的10个值,使x的对应值为10个最大值。
y
x
在平均测试用例中,x和y的长度为4000-5000。所以速度至关重要。你能告诉我使用python的一些内置函数做到这一点的方法,以便尽可能快地进行操作。
答案 0 :(得分:7)
如果您想要数千个列表中的十个顶级元素,可以尝试heapq:
heapq
import heapq heapq.nlargest(10, zip(x, y))