Python:从多维列表中获取最大值
我想得到这个列表的最大值,但比排序要快Python:从多维列表中获取最大值,python,list,sorting,multidimensional-array,max,Python,List,Sorting,Multidimensional Array,Max,我想得到这个列表的最大值,但比排序要快 [[1, 3], [2, 3], [3, 1], [3, 2], [3, 3], [3, 4], [3, 5], [4, 1], [4, 2], [4, 3], [5, 2], [5, 3]] 我以前用这样的键排序 bb = int(sorted(ab, key = lambda x:(int(x[1])))[-1][1]) 获取此列表的结果 [[1, 1], [2, 1], [2, 2], [3, 2]] 我可以得到3和2,这是每行的最大值 但是我
[[1, 3], [2, 3], [3, 1], [3, 2], [3, 3], [3, 4], [3, 5], [4, 1], [4, 2], [4, 3], [5, 2], [5, 3]]
我以前用这样的键排序
bb = int(sorted(ab, key = lambda x:(int(x[1])))[-1][1])
获取此列表的结果
[[1, 1], [2, 1], [2, 2], [3, 2]]
我可以得到3和2,这是每行的最大值
但是我花了太多的时间,我怎样才能加快速度呢?
我希望能够设置排序方法、plz帮助之类的键,您不需要对列表进行排序(这将添加大量冗余操作)。您可以选择内部列表的最大值:
lst=[[1,3]、[2,3]、[3,1]、[3,2]、[3,3]、[3,4]、[3,5]、[4,1]、[4,2]、[4,3]、[5,2]]
结果=最大值(lst中l的最大值(l))
您可以尝试使用numpy,它会根据您的列表返回5
import numpy as np
np.max(ab)
很好的简单解决方案。你有没有用@Mureinik方法测试过计时基准?(包括导入
numpy
)我正要发布我的计时赛结果,但我看到你已经击败了我:DNO与原件不相等(尽管这可能是需要的)。我的帖子上的评论已确认,将仔细查看。谢谢你的提醒!我的意思是,我想通过像lst[n][0]之类的直线得到最大值