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 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.