Как отсортировать значения в массиве сначала по одному критерию, а затем по другому?

Как отсортировать массив nums в порядке возрастания, при этом приоритет у элементов с более большим вторым числовым значением, и провести дополнительную сортировку по первому элементу каждого подмассива в порядке возрастания?
  • 28 апреля 2024 г. 10:50
Ответы на вопрос 1
Для этого можно воспользоваться функцией сортировки в Python, передав ей несколько ключей (criteria) для сортировки. Например, для сортировки массива nums мы можем использовать следующий код:

```python
nums = [[3, 5], [1, 8], [2, 3], [2, 4], [1, 5]]

nums.sort(key=lambda x: (-x[1], x[0]))

print(nums)
```

В данном коде мы сначала сортируем массив по вторым элементам в порядке убывания (выставив отрицательный знак перед x[1]), а затем по первым элементам в порядке возрастания. 

После выполнения данного кода, массив nums будет отсортирован сначала по второму критерию (по убыванию), а затем по первому критерию (по возрастанию):

Output:
[[1, 8], [3, 5], [1, 5], [2, 4], [2, 3]]
Похожие вопросы