Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
4 / 4 / 0
Регистрация: 21.04.2019
Сообщений: 22
1

Задача на сортировку списка по убыванию

24.04.2019, 15:29. Просмотров 3769. Ответов 5
Метки нет (Все метки)

Теперь надо создать функцию sorted2(data, key), способную сортировать вложенные списки, содержащие целые числа, как линейные.

Параметр data содержит вложенный список, который требуется отсортировать.

Параметр key задаёт функцию, определяющую правило сортировки. Задайте значение по умолчанию так, чтобы список сортировался по убыванию.

Функция должна возвращать новый список.
#нужно очень срочно пожалуйста
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.04.2019, 15:29
Ответы с готовыми решениями:

Задача: Напишите сортировку массива по убыванию за O(max(a1, a2, ., an)
Помогите с кодом, что не так? Или напишите свой код на эту задачу. Заранее спасибо. Код:...

Задача про сортировку с использованием связного списка, нужно найти ошибку
Имеется файл состоящий из данных о студентах(ФИО, номер группы, средний бал). Построить...

Выполнить сортировку массива по убыванию
С массивами у меня все очень и очень печально,огромная просьба помогите с задачкой "Выполнить...

Реализовать сортировку по возрастанию и убыванию
Здравствуйте! имеется код готовой программы. В нем нужно наиболее легким способом ( как сказал...

5
1014 / 552 / 238
Регистрация: 15.01.2019
Сообщений: 2,153
Записей в блоге: 1
24.04.2019, 15:45 2
MSchulcz, пример входных/выходных данных? и что конкретно не получается?
0
4 / 4 / 0
Регистрация: 21.04.2019
Сообщений: 22
24.04.2019, 15:56  [ТС] 3
Пример 1

Ввод
data = [[1, 2], [3, 4]]

Вывод
res = [[4, 3], [2, 1]]

Пример 2

Ввод
data = [[3], [2, 1]]
key = lambda x: x

Вывод
res = [[1], [2, 3]]
0
1014 / 552 / 238
Регистрация: 15.01.2019
Сообщений: 2,153
Записей в блоге: 1
24.04.2019, 16:01 4
Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
и что конкретно не получается?
пример вашего кода можно?
0
117 / 96 / 79
Регистрация: 30.11.2017
Сообщений: 230
24.04.2019, 16:35 5
Python
1
2
3
4
5
6
7
8
9
10
def sorted2(data, key = lambda x: -x):
    elems = [y for x in data for y in x]
    elems.sort(key = key)
    result = data[:]
    counter = 0
    for i,x1 in enumerate(data):
        for j,x2 in enumerate(x1):
            result[i][j] = elems[counter]
            counter += 1
    return result
0
1014 / 552 / 238
Регистрация: 15.01.2019
Сообщений: 2,153
Записей в блоге: 1
24.04.2019, 16:55 6
Ну ок
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from functools import reduce
 
 
def sorted2(data, key=lambda x: -x):
    single_list = sorted((reduce(lambda x,y: x+y, data)), key=key)
    
    i = 0
    for k in range(len(data)):
        for x in range(len(data[k])):
            data[k][x] = single_list[i]
            i += 1
    
    return data
 
print(sorted2([[14], [215, 383, 87], [298], [374], [2,3,4,5,6,7]], key=lambda x: x))
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.04.2019, 16:55

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Выполнить сортировку по убыванию. Пирамидальная сортировка
Выполнить сортировку по убыванию. Пирамидальная сортировка и сортировка слияния. Размерность...

Написать обменную поразрядную сортировку (по убыванию)
помогите пожалуйста!! как написать программу, в которой нужно с помощью алгоритма сортировки...

С использованием heap реализовать сортировку по убыванию
Для списка пар pair<string,int>, где первое число - имя пользователя, второе - сумма набранных...

Добавить сортировку массива по возрастанию и убыванию
Нужно прикрутить вывод на экран не только в порядке возрастания, но и в порядке убывания. Буду...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.