Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

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'라는 메서드가 정의되어 있습니다.

  • 목록이 반복되고 특정 요소에 액세스하여 연속 요소보다 작은지 확인합니다.

  • 길이는 메서드의 출력으로 반환됩니다.

  • 메소드 외부에 정수 목록이 정의되어 콘솔에 표시됩니다.

  • 이전에 정의한 메소드를 매개변수로 전달하여 정렬 메소드를 사용하여 목록을 정렬합니다.

  • 출력은 콘솔에 표시됩니다.