Python – 根据 K 大小子阵列的最大值对矩阵排序
当需要根据 k 大小的子数组最大值对矩阵进行排序时,定义一个使用'amx' 和'sum' 方法并遍历列表的方法。
示例
以下是对其进行演示
def sort_marix_K(my_list): return max(sum(my_list[index: index + K]) for index in range(len(my_list) - K)) my_list = [[51, 23, 4, 24, 1], [45, 6, 26, 36, 5], [56, 16, 6, 36, 8], [5, 4, 36, 26, 26]] print("The list is :") print(my_list) K = 4 print("The value of K is ") print(K) my_list.sort(key=sort_marix_K) print("The resultant list is :") print(my_list)
输出
The list is : [[51, 23, 4, 24, 1], [45, 6, 26, 36, 5], [56, 16, 6, 36, 8], [5, 4, 36, 26, 26]] The value of K is 4 The resultant list is : [[5, 4, 36, 26, 26], [51, 23, 4, 24, 1], [45, 6, 26, 36, 5], [56, 16, 6, 36, 8]]
说明
定义了一个名为'sort_matrix_K' 的方法,它以列表作为参数。
它遍历列表并确定索引,并获取特定索引的和,然后获取这些值的较大者。
这作为输出返回。
在方法外部,定义了一个列表的列表,并在控制台上显示。
K 的值已定义并在控制台上显示。
列表基于先前定义的方法进行排序。
输出显示在控制台上。
广告