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 次浏览

开启你的 事业

完成课程获得认证

开始
广告