Главная » Просмотр файлов » Т. Кормен, Ч. Лейзерсон, Р. Ривест, К. Штайн - Алгоритмы - Построение и анализ (2 изд.)

Т. Кормен, Ч. Лейзерсон, Р. Ривест, К. Штайн - Алгоритмы - Построение и анализ (2 изд.) (1123758), страница 168

Файл №1123758 Т. Кормен, Ч. Лейзерсон, Р. Ривест, К. Штайн - Алгоритмы - Построение и анализ (2 изд.) (Т. Кормен, Ч. Лейзерсон, Р. Ривест, К. Штайн - Алгоритмы - Построение и анализ (2 изд.)) 168 страницаТ. Кормен, Ч. Лейзерсон, Р. Ривест, К. Штайн - Алгоритмы - Построение и анализ (2 изд.) (1123758) страница 1682019-05-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 168)

В части а этого рисунка сеть разбита на модули; за первым модулем в ней следуют два параллельно расположенных модуля Вггоьлс Яоктнн[тл/2]. В части б изображена та же сеть, в которой рекурсия раскрыта подробнее. Возле проводов указаны примеры нуль-единичных величин, а отдельные модули выделены затенением. Упражнения 27.4-1. Докажите для объединяющих сетей утверждение, аналогичное нуль-единичному принципу. Другими словами, покажите, что сравнивающая сеть, которая объединяет две произвольные монотонно неубывающие последовательности из нулей и единиц, могут объединять две произвольные монотонно неубывающие последовательности, состоящие из любых чисел.

816 Часть ЧП. Избранные темы 27.4-2. Сколько различных нуль-единичных последовательностей необходимо подать на вход сравнивающей сети, чтобы проверить, что она действительно является объединяющей сетью? 27.4-3. Покажите, что любая сеть, которая объединяет один элемент с п — 1 отсортированными элементами, выдавая отсортированную последовательность длины п, должна иметь глубину не менее 18 и. * 27.4-4. Рассмотрим объединяющую сеть с входной последовательностью аз, аз, ..., а„для и, равных степени двойки, в которых две монотонные объединяемые последовательности имеют вид (аз, аз,..., а„-з) и (аг, а4, а„).

Докажите, что количество сравнений, которые выполняются в объединяющих сетях этого вида, равно П (и 18 п). Почему эта нижняя граница представляет интерес? (Указание: разбейте сравнивающие устройства на три множества.) * 27.4-5. Докажите, что для любой объединяющей сети, независимо от порядка входных последовательностей, требуется П (и 18 и) сравнивающих устройств. 27.5 Сортирующая сеть Теперь у нас имеются все инструменты, необходимые для построения сети, юторая способна отсортировать любую входную последовательность. В сортирующей сети Боктек[п] с помощью обьединяющей сети реализована параллельная версия сортировки слиянием, описанная в разделе 2.3.1.

Построение и работа сортирующей сети проиллюстрирована на рис. 27.12. На рис. 27.12а показана рекурсивная схема сети Боктек[п]. Последовательность из п входных элементов сортируется путем (параллельной) рекурсивной сортировки двух подпоследовательностей длиной п[2, каждая в двух модулях Боктвк[п/2].

Затем обе полученные в результате последовательности объединяются с помощью модуля Мвкапк[п]. Граничный случай рекурсии имеет место при и = 1. При этом 1-элементную последовательность можно отсортировать с помощью провода, потому что она уже отсортирована. На рис. 27.12б показан результат более подробного представления рекурсии, а на рис. 27.12в — сама сеть, полученная в результате замены блоков Мпкпев„изображенных на рис.

27.12б, реальными объединяющими сетями. Кроме того, на рис. 27.12в указаны глубины всех сравнивающих устройств, а возле проводов — примеры нуль-единичных значений. В сети Боктнк[п] данные проходят 18п этапов. Каждый отдельный входной элемент сети представляет собой уже отсортированную одноэлементную последовательность. Первый модуль сети Боктпк[п] состоит из и/2 копий подсети Мккпик[2], которые подключены параллельно и объединяют пары 1-элементных Глава 27.

Сортирующие сети 817 з 2 3 4 я 4 4 5 5 6 Гл>сина ! Рнс. 27.12. Сортирующяя сеть Зоктвк[о], построенная лугам рекурсивного совмещения обьелиняющих сетей последовательностей в отсортированные последовательности из двух элементов. Второй модуль состоит из а/4 копий подсети Мнкснк[4], объединяющих пары этих двухзлементных отсортированных последовательностей в отсортированные последовательности из четырех элементов.

В общем случае модуль под номером Часть Ч11. Избранные темы 818 lс, где й = 1,2,...,18п, состоит из и/2" копий подсети Мижнк[2"], объединяющих пары 2" '-элементных отсортированных последовательностей в отсортированные последовательности длины 2". На выходе последнего модуля выдается одна отсортированная последовательность, содержащая все входные значения. По индукции можно показать, что такая сеть сортирует все нуль-единичные последовательности, а значит, согласно нуль-единичному принципу (теорема 27.2), она способна сортировать произвольные значения.

Можно провести рекурсивный анализ глубины сортирующей сети. Глубина Р (и) сети Боктнк[п] равна сумме глубины Р (и/2) подсети Боктвк[п/2] (всего имеется две копии этой подсети, но они работают параллельно) и глубины 18 и модуля Микаил[п]. Следовательно, глубина сети Боктик[п] выражается рекуррентным соотношением 0 при и = 1, Р(п/2)+18п при п = 2", й > 1, решение которого имеет вид Р (п) = 9 (18~ п) . (Здесь использована версия основного метода из упражнения 4.4-2.) Таким образом, в параллельной сети и чисел можно отсортировать за время О (18~ и).

Упражнения 27.5-1. Сколько сравнений выполняется в сети Боктек[п]? 27.5-2. Покажите, что глубина сети Болтик[п] равна (18 п) (18 и+ 1)/2. 27.5-3. Предположим, что всего имеется 2п элементов (аы аг,..., аг„) и нужно разбить их на две части, в одной из которых содержалось бы п меньших элементов, а в другой — п больших. Докажите, что это можно сделать путем увеличения на единицу глубины сети, выполняющей раздельную сортировку последовательностей (аы аг,..., пь) и (а +ы а +г,, агь). * 27.5-4.

Пусть Я (й) — глубина сортирующей сети на 1с входов, а М (1с) — глубина обьединяющей сети на 2й входов. Предположим, что задана последовательность из п чисел, которую нужно отсортировать. Также известно, что каждое число находится в пределах й позиций от правильного положения, которое оно займет после сортировки. Покажите, что п таких чисел можно отсортировать с помощью сети глубиной Я (к) + 2М (й). * 27.5-5. Элементы матрицы тп х т можно отсортировать путем )с-кратного повторения описанной ниже процедуры. 1) Сортировка всех нечетных строк в порядке возрастания.

2) Сортировка всех четных строк в порядке убывания. Глава 27. Сортирующие сети 819 3) Сортировка всех столбцов в порядке возрастания. Скольш итераций потребуется выполнить в этой процедуре сортировки? В каком порядке следует считывать матричные элементы после )ь итера- ций, чтобы получилась отсортированная выходная последовательность? Задачи а) Покажите, что любая сортирующая транспозиционная сеть с п входами содержит Й (пз) сравнивающих устройств. б) Докажите, что транспозиционная сеть с и входами является сортирующей тогда и только тогда, когда она сортирует последовательность (гз, и — 1,..., 1).

(Указание: используйте метод математической индукции, аналогично доказательству леммы 27.1.) Нечеязно-четная сортяррющяя сеть (о<И-етеп зогйпй пепчогК) на и входов (аз, аз,..., а,з) — это транспознционная сортирующая сеть с и уровнями сравнивающих устройств, соединенных между собой по схеме "кирпичной кладки" (рис. 27.13). Как видно из рисунка, при з = = 1,2,..., и и ь( = 1, 2,..., гз линия з соединена сравнивающим устройством на глубине Н с линией 3 = з + ( — 1)ь+", если 1 < 3 < и. в) Докажите, что нечетно-четные сортнрующие сети действительно выполняют сортировку. ь! ьз ьз ьз ь, ьз ьв вз ь4 Оз Рис.

27.13. Нечетно-четнвя сор- тирующая сеп» на 8 входов 27-1. Транспозицнонные сортирующие сети Сравнивающая сеть является траясяозизЬионяой (1гапзроз(йоп пепчогк), если каждое сортирующее устройство в ней соединяет соседние линии, как в сети, изображенной на рис. 27.3. 820 Часть Ч11. Избранные темы 27-2. Нечетно-четная объединяющая сеть Батчера (ВаГсЬег) В разделе 27.4 было показано, как построить объединяющую сеть на основе битонической сортировки. В этой задаче будет сконструирована нечетно-четная объединяющая сеть (гхЫ-ечеп шег81п8 пеГчгог1с). Предполагается, что п равно степени двойки, а задание заключается в том, чтобы обьедииить отсортированную последовательность, элементы которой подаются на линии (аг, аз,..., а„), с отсортированной последовательностью, элементы которой подаются на линии (а„+г, а„+з,..., аз„).

Если и = 1, то сравнивающее устройство размещается между линиями а~ и аз. В противном случае по принципу рекурсии составляются две нечетно-четные объединяющие сети, которые работают параллельно. Первая из них объединяет последовательность, которая подается иа линии (аг,аз,...,а„г), с последовательностью, которая подается на линии (а„~ма„+з,..., аз„г) (нечетные элементы). Вторая сеть выполняет ту же самую операцию над последовательностями (аз, а4,..., а„) и (ач+з, ач+4,...,аз„) (четные элементы). Чтобы скомбинировать две отсортированные последовательности, сравнивающие устройства помещаются между линиями аз; и агя+г при г = 1, 2,..., и — 1. а) Изобразите объединяющую сеть на 2и входов при и = 4.

б) Профессор предложил обьединять две отсортированные последовательности, полученные путем рекурсивного объединения, помещая сортирующие устройства не между линиями агя и аьч+г для 1 = = 1, 2,..., п — 1, а между линиями аьч ~ и агя для 4 = 1, 2,..., и. Нарисуйте схему такой сети на 2п входов при п = 4 и приведите контрпример, из которого видно, что профессор ошибается, и получившаяся в результате сеть не является объединяющей. На этом же примере покажите, что объединяющая сеть на 2и входов, описанная в части а, работает правильно. в) Докажите с помощью нуль-единичного принципа, что любая нечетко-четная объединяющая сеть на 2п входов действительно является объединяющей сетью.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6439
Авторов
на СтудИзбе
306
Средний доход
с одного платного файла
Обучение Подробнее