В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
08122005vlad
08122005vlad
30.08.2022 11:32 •  Информатика

Питон поразрядная сортировка является одним из видов сортировки, которые работают за линейное от размера сортируемого массива время. такая скорость достигается за счет того, что эта сортировка использует внутреннюю структуру сортируемых объектов. изначально этот алгоритм использовался для сортировки перфокарт. первая его компьютерная реализация была создана в университете mit гарольдом сьюардом (harold н. seward). опишем алгоритм подробнее. пусть задан массив строк s 1 ,  s i причем все строки имеют одинаковую длину m . работа алгоритма состоит из m фаз. на i -ой фазе строки сортируются па i -ой с конца букве. происходит это следующим образом. будем, для простоты, в этой рассматривать строки из цифр от 0 до 9. для каждой цифры создается «корзина» («bucket»), после чего строки s i распределяются по «корзинам» в соответствии с i -ой с конца цифрой. строки, у которых i -ая с конца цифра равна j в j -ую корзину (например, строка 123 на первой фазе попадет в третью корзину, на второй — во вторую, на третьей — в первую). после этого элементы извлекаются из корзин в порядке увеличения номера корзины. таким образом, после первой фазы строки отсортированы по последней цифре, после двух фаз - по двум последним, после m фаз - по всем. при важно, чтобы элементы в корзинах сохраняли тот же порядок, что и в исходном массиве (до начала этой фазы). например, если массив до первой фазы имеет вид: 111,112,211, 311, то элементы по корзинам распределятся следующим образом: в первой корзине будет. 111,211,311, а второй: 112. ваша состоит в написании программы, детально показывающей работу этого алгоритма на заданном массиве. входные данные первая строка входного файла содержит целое число n (1 ≤ n ≤ 1000) . последующие n строк содержат каждая по одной строке s i . длины всех s i , одинаковы и не превосходят 20. все s i состоят только из цифр от 0 до 9. выходные данные в выходной файл выведите исходный массив строк в, состояние «корзин» после распределения элементов по ним для каждой фазы и отсортированный массив. следуйте формату, в примере. примеры входные данные 9 12 32 45 67 98 29 61 35 09 выходные данные initial array: 12, 32, 45, 67, 98, 29, 61, 35, 09 phase 1 bucket 0: empty bucket 1: 61 bucket 2: 12, 32 bucket 3: empty bucket 4: empty bucket 5: 45, 35 bucket 6: empty bucket 7: 67 bucket 8: 98 bucket 9: 29, 09 phase 2 bucket 0: 09 bucket 1: 12 bucket 2: 29 bucket 3: 32, 35 bucket 4: 45 bucket 5: empty bucket 6: 61, 67 bucket 7: empty bucket 8: empty bucket 9: 98 sorted array: 09, 12, 29, 32, 35, 45, 61, 67, 98

Показать ответ
Ответ:
Marsel200301
Marsel200301
13.06.2019 16:50

ответ: попався двоечник сириус значит делаешь

объяснение:

0,0(0 оценок)
Ответ:
horki1
horki1
13.06.2019 16:50
14+n  всего учеников в классе.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота