Computer >> Máy Tính >  >> Lập trình >> Python

Python - Sắp xếp Ma trận theo Số phần tử lớn hơn phần tử trước của nó

Khi yêu cầu sắp xếp ma trận dựa trên số lượng phần tử lớn hơn phần tử trước đó, một hàm có thể hiểu được danh sách và phương thức ‘len’.

Dưới đây là một minh chứng về điều tương tự -

Ví dụ

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)

Đầu ra

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]]

Giải thích

  • Một phương thức có tên là ‘fetch_greater_freq’ được xác định sẽ nhận một danh sách làm tham số.

  • Danh sách được lặp lại và một phần tử cụ thể được truy cập và kiểm tra xem nó có nhỏ hơn phần tử liên tiếp của nó hay không.

  • Độ dài của nó được trả về dưới dạng đầu ra của phương thức.

  • Bên ngoài phương thức, một danh sách danh sách các số nguyên được xác định và hiển thị trên bảng điều khiển.

  • Danh sách được sắp xếp bằng cách sử dụng phương pháp sắp xếp bằng cách chuyển phương thức đã xác định trước đó làm tham số.

  • Đầu ra được hiển thị trên bảng điều khiển.