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 的值已定义并在控制台上显示。

  • 列表基于先前定义的方法进行排序。

  • 输出显示在控制台上。

更新于: 20-Sep-2021

180 次浏览

开启您的职业生涯

完成课程获得认证

开始
广告