Рубрики

Python | Относительный отсортированный порядок в матрице

Иногда при работе с Python Matrix у нас могут быть данные, расположенные случайным образом, и у нас может быть требование, согласно которому нам нужно получить положение элемента в отсортированном порядке Matrix. Давайте обсудим определенный способ выполнения этой задачи.

Метод: использование списка понимания + enumerate() + sort() + lambda
Решение проблемы может быть достигнуто с помощью комбинации вышеуказанных функций. В них нам нужно сначала упорядочить элемент для создания кортежа значения индекса, используя enumerate() и понимание списка. Затем мы используем функцию сортировки для выполнения пользовательской сортировки с использованием лямбда-функции.

Код:

# Python3 код для демонстрации работы
# Относительно отсортированный порядок в матрице
# используя понимание списка + enumerate () + sort () + lambda

  
# инициализировать список

test_list = [[1, 3, 1], [4, 6], [7, 8, 10]]

  
# печать оригинального списка

print("The original list is : " + str(test_list))

  
# Относительно отсортированный порядок в матрице
# используя понимание списка + enumerate () + sort () + lambda

res = [(i, j) for i, x in enumerate(test_list) for

       j, _ in enumerate(x)]

res.sort(key = lambda f: test_list[f[0]][f[1]])

  
# результат печати

print("Sorted order of Matrix elements : " + str(res))

Выход :

The original list is : [[1, 3, 1], [4, 6], [7, 8, 10]]
Sorted order of Matrix elements : [(0, 0), (0, 2), (0, 1), (1, 0),
                                   (1, 1), (2, 0), (2, 1), (2, 2)]

Рекомендуемые посты:

Python | Относительный отсортированный порядок в матрице

0.00 (0%) 0 votes