AOP_Tom3 (1021738), страница 90

Файл №1021738 AOP_Tom3 (Полезная книжка в трёх томах) 90 страницаAOP_Tom3 (1021738) страница 902017-07-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

[20] Как изменить алгоритм Р, чтобы он работал и при Р = 1? б. [21] Если в различных файлах имеются равные ключи, необходимо в процессе прогнозирования действовать очень аккуратно. Объясните, почему Покажите, как избежать трудностей, если болев строго определить операции слияния и прогнозирования в алгоритме Г. 6. [22] Какие изменения нри работе с Т+ 1 лентами следует сделать в алгоритме 5,4.3С, чтобы преобразовать его в алгоритм каскадного слияния с совмсщеняем псреэштхи? 7. [20] Начальное распределение в примере 7 диаграммы Л порождает (Агрг)" Рг(Агрг)ш Вг(Агрг)э Вг(дгВг)г на лентах 1 — 4, где (Агрг) означает.4гргАгргдгргАгргдгргдгргдгрг.

Покажите, как вставить дополнительные серии Ааи Вэ наилучшим из возможных способов (в том смысле, что общее число обрабатываемых во время слияния начальных серий будет минимальны и), чтобы привести распределение к следующему виду: 4(р 4)ы (рд)гэ (Рд)ге (рд)гг Указание. Чтобы сохранить четность, необходимо вставлять серии Ао и Вэ в виде соседних пар.

Числа слияния для каждой начальной сории могут быть подсчитаны, как в упр. о.4.4 — 5; здесь появляется некоторое упрощение, так как соседние серии всегда имеют соседние числа слияния. 8. [20] На диаграмме А видно, что большинство схем начального распределения серий (за исключением начального распределения для каскадного слияния) имеет тенденцию к помещению последовательных серий на различные ленты. Если бы последовательные серии попали на одну ленту, то мы могли бы сэкономить стартстопное время. Можно лн поэтому считать продуктивной идею изменения алгоритмов распределения так, чтобы они реже переключали ленты? 9. [22] Оцените.

сколько времени 'заняло бы выполнение многобгазного алгоритма с обратным чтением из показанных на диаграмме А, если бы для сортировки использовались все Т = 6 лент, а не Т = 5, как в примере 7 Было ли разумно избегать использования вводной ленты? 13. [80] Может ли метод осциллируквцей сортировки с пятью лентами в том виде, в котором он определен в алгоритме 5 4.5В, использоваться для сортировки четырех полных бобин исходных данных до момента окончательного слияния? 14. [М19] Выведите [10).

15. [НМ89] Докажите, что дп[г) = Ьо[з)/[1 — з), где НО[з) является рациональной функцией з, не имеющей особых точек внутри единичного круга; следовательно, а = Йо(1)п+ (ос 0(1) при и -+ оо. В частности, покажите, чэо 0 — ре )сз[1) = с)ег 0 1 — рс 0 — рэ 1 0 0 0 1 — ро 0 0 -ро 0 / 1 1-рс -ра 0 суес 1-р~ -ро ?с 1 -рэ 1-рс -ре 0 0 0 0 — 1 1 16. [41] Детально изучите сортировку 100„000 записей по 100 символов, нарисуйте диа- граммы, подобные диаграмме А, в предположении, что имеется 3, 4 и 5 лент. *5.4.7. Внешняя поразрядная сортировка В предыдущих разделах рассматривалась сортировка методом слияния файлов на лентах.

Но существует и другой способ сортировки на лентах, основанный на принципе поразрядной сортировки, который ранее использовался в механических сортировальных машинах для перфокарт [см. раздел 5.2.5). Этот метод иногда называют распределяющей сортировкой., сортировкой по колонкам, карманной сортировкой, цифровой сортировкой, сортировкой методом разделения и т. д. Он, как оказывается, по существу, протиеополозссен слиянию! Предположим, например, что в нашем распоряжении имеются четыре ленты, а ключей может быть только восемь: О, 1, 2, 3, 4, 5, б, 7.

Если исходные данные 10. [М80] Используя анализ, проведенный в разделах 5.4.2 и 5.4.3, покажите, что длина каждой перемотки во время стандартного многофазпого слияния с шестью лентами или каскадного слияния редко превышает 54% длины файла [исключая начальную и конечную перемотки, которые охватывают весь файл). 11. [83] Откорректировав ссютветствующие элементы табл. 1, оцените, сколько времени заняло бы выполнение первых девяти примеров на дваграмме А, если бы мы имели двухскоростную перемотку [быструю и лседленную). Считайте, что р = 1, если лента заполнена меньше чем на одну четвертач а для более заполненной ленты время перемотки равно приблизительно 5 с плюс то время, которое получилось бы при р = —.'. Измените прилгер 8 так, чтобы в нем использовююсь каскадное слияние с копированием, поскольку перемотка и прямое чтение в этом случае происходят медленнее копирования.

[Указание. Используйте результат упр. 10.] 12. [40] Рассмотрим разбиение шести лент на три пары лент, где каждая пара играет роль одной лгзсты в многофазном слиянии с Т = 3. Одна лента каждой пары будет содержать блоки 1, 3, 5,..., а другая — блоки 2, 4, 6,., .; таким способом мы, по существу, добиваемся того, чтобы во все время слияния две вводные и две выводные ленты оставались активными, причем эффективная скорость слияния удваивается. а) Найдите подходящий способ распространения алгоритма Г на этот случай. Ь) Оцените общее время выполнения, которое получилось бы, если бы этот метод использовался для сортировки 100,000 записей по 100 символов, рассмотрев случаи как прямого, так и обратного чтения. содержатся на ленте Т1, то начнем с переписи всех четных ключей на ТЗ и всех нечетных — на Т4.

Т2 Т1 (0,1,2,3,4,5,6,7) ТЗ Т4 Дано Проход 1 (0,2,4,6) (1,3,5,7) Теперь перематываем ленты и читаем сначала ТЗ, а затем — Т4, переписывая (О, 1,4,5) наТ1и (2,3,6,7) наТ2. (2, 6) (3, 7) Проход 2 (0,4Ц1,5) (Строка "(0,4Ц1, 5)" обозначает файл, содержащий записи только с ключами 0 и 4, за которыми следуют записи только с ключами 1 и 5. Заметим, что на Т1 теперь находятся те ключи, средний двоичный разряд которых содержит О.) После еще одной перемотки и распределения ключей О, 1, 2, 3 на ТЗ и ключей 4, 5, 6, 7 на Т4 получаем следующее.

(ОЦ1Ц2ЦЗ) (4)(5Ц6Ц7) Проход 3 После копирования Т4 в конец ТЗ рабата завершается. В общем случае для ключей в диапазоне от 0 до 2" — 1 можно аналогичным образом рассортировать файл за 1г проходов, после которых следует фаза окончательной "сборки". На этом этапе примерно половина данных копируется с одной ленты на другую. Имея шесть лент, можно так же использовать представления по основанию 3 для сортировки ключей от О до 3" — 1 зал проходов. Существуют модификации этого метода с частичными проходами. Предположим, например, что допускается десять ключей (0,1,...,9), и рассмотрим следующую процедуру, авторство которой принадлежит Р. ЗЬ Эшенхерсту (В.

Ь. АэЬеп1пггэг) [Тйеогу оу Яябгс51п8, Ргойгеээ ВерогС ВЬ-7 (Нагхагб 11шпо Сошр. Ьаоога1огу: Мау, 1954), 1.1 — 1.76~. Т2 ТЗ Т4 Проход Здесь С представляет фазу сборки. Если каждое значение ключа встречается примерно в одном из десяти случаев, то эта процедура для сортировки десяти ключей затрачивает только 2.8 прохода, в то время как в первом примере требуется 3.5 прохода для сортировки всего восьми ключей.

Таким образом, продуманая схема распределения влечет за собой значительное различие в показателях эффективности для поразрядной сортировки точно так же, как для слияния. Схемы распределения из предыдущих примеров представим, как и обычно, древовидными структурами. Фаза Т1 (0,1,...,9) 1 2 (0) 3 (ОЦ1Ц2) 4 (ОЦ1Ц2ЦЗ) С (ОЦ1Ц2) (ЗЦ4)... (9) (0,2,4,7) (1,5,6) (3,8,9) — (1, 5, 6) (2, 7) (3, 8, 9) (4) (6Ц7) — (3, 8, 9Ц4Ц5) (6Ц7Ц8) (9) (4Ц5) 1.0 0.4 0.5 0.3 0.6 2.8 Пример 1 Пример 2 4 6 в т 7 Круглые внутренние узлы этих деревьев пронумерованы 1, 2, 3, ... в соответствии с шагами процесса 1, 2, 3, .... Имена лент А, В, С, В (вместо Т1, Т2, ТЗ, Т4) помещены рядом с ребрами дерева, чтобы указать, нуда попадают записи. Квадратные внешние узлы изображают фрагменты файла, содержащие только один ключ, и этот ключ выделен полужирным шрифтом под соответствующим узлом.

Ребра, расположенные над квадратными узлами, помечены именем выводной ленты (С в первом примере, А — во втором). Таким образом, на шаге 3 примера 1 выполняется считывание с ленты О н запись ключей 1 и 5 на ленту А и ключей 3 и 7 на ленту В. Нетрудно видетгь что число выполняемых проходов равно длине внешнего пути дерева, деленной на число внешних узлов в предположении, что все ключи равновероятны.

В свизн с последовательной природой ленты и в соответствии с пранилом 'первым включается — первым исключается", которому подчиняетгя прямое чтение, нельзя взять за основу схемы распределения любое помеченное дерево. В дереве примера 1 данные записываются на ленту А на шагах 2 и 3; данные, записанные в течение шага 2, необходимо использовать раньше данных, записанных в течение шага 3.

В общем случае, если осуществляется запись на ленту в течение шагов 1 и 1', где 1 ( у, первыми следует испольэовать данные, записанные в течение шага й Ксли дерено содержит две ветви нида л л, г<з, то должно выполняться условие к с 1. Кроме того, нельзя ничего записывать на ленту А между шагами к и 1, поскольку между чтением и записью необходима перемотка. Те читатели, которые внимательно проработали упражнения из раздела 5.4.4, сразу поймут, что допустимые деревья для поразрядной сортировки с прямым чтением на Т лентах — это в точности сильные Т-Яо-деревья, описывающие сортировку методом слияния на Т лентах с прямым чтением! (См. упр.

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

Тип файла
DJVU-файл
Размер
10,16 Mb
Тип материала
Высшее учебное заведение

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

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