我有一个包含(x,y)的2D数组列表,但是我想用(x^2+y^2)的平方根的最小值对这个列表进行排序。你知道吗
例如,我有四个2D列表:
(20,10)
(3,4)
(5,6)
(1.2,7)
如果我取此列表中每个2D数组的平方根并返回排序列表的最小值,则输出为:
(3,4)
(1.2,7)
(6.5,4)
(5,6)
(20,10)
代码:
M=[ [20,10],[3,4],[5,6],[1.2,7],[6.5,4]]
s码=np.sqrt公司(米)
a=[]
打印s
对于范围(0,h)内的i:
for j in range(0,w):
a[i] =s[i][j]+a[i]
有什么想法吗?你知道吗
使用列表的内置排序方法:
将数据结构切换到元组列表,然后使用最小值作为关键函数进行排序(使用memoization以提高效率):
输出
因为我们只是排序,我们不需要计算平方根,平方就足够了。你知道吗
下面的代码将解决您的要求,取消对print语句的注释,如果您想了解排序的工作原理!!你知道吗
相关问题 更多 >
编程相关推荐