Python - 根據比其前一個元素更大的元素數量對矩陣排序


當需要根據比前一個元素更大的元素數量對矩陣進行排序時,可以使用函式使用列表解析和“len”方法。

以下是對其進行演示:

示例

線上演示

def fetch_greater_freq(row):

   return len([row[idx] for idx in range(0, len(row) - 1) if row[idx] < row[idx + 1]])

my_list = [[11, 3, 25, 99, 10], [5, 3, 25, 4], [77, 11, 5, 3, 77, 77], [11, 3, 25]]

print("The list is :")
print(my_list)

my_list.sort(key=fetch_greater_freq)

print("The resultant list is :")
print(my_list)

輸出

The list is :
[[11, 3, 25, 99, 10], [5, 3, 25, 4], [77, 11, 5, 3, 77, 77], [11, 3, 25]]
The resultant list is :
[[5, 3, 25, 4], [77, 11, 5, 3, 77, 77], [11, 3, 25], [11, 3, 25, 99, 10]]

說明

  • 定義了一個名為“fetch_greater_freq”的方法,該方法將列表作為引數。

  • 遍歷列表,訪問特定元素並檢查它是否小於其連續元素。

  • 它的長度作為該方法的輸出返回。

  • 在方法外部,定義了一個整數列表列表,並顯示在控制檯上。

  • 使用排序方法對列表進行排序,方法是將先前定義的方法作為引數傳遞。

  • 輸出顯示在控制檯上。

更新時間:2021-9-4

152 次瀏覽

開啟你的 事業

完成課程獲得認證

開始
廣告
© . All rights reserved.