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

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

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

28 показана форма пирамиды из 26 элементов; каждый узел помечен двоичным числом, соответствующим его индексу в пирамиде. Звездочками на этой диаграмме помечены так называемые особые узлы, которые лежат на пути от 1 к Лг. Одна из наиболее важных характеристик пирамиды — множество размеров ее поддеревьев. Например, на рис. 28 размеры поддеревьев с корнями в узлах 1,2,...,26 равны соответственно Рис.

28. Так выглядит пирамида из 26 = (11010)з элементов. Например, количество способов такого расположения 26 букв (А, В,С,..., Я) на рис. 28, чтобы по вертикали сохранялся алфавитный порядок, составляет 20(/(28.10 б 2 1 1" 8' 7' 18') Теперь можно проанализировать фазу построения пирамиды в алгоритме Н, т, е. вычислительные операции, которые завершаются до того, как на шаге Н2 впервые выполнится условие 1 = 1. К счастью, благодаря сформулированной ниже теореме анализ построения пирамиды можно свести к изучению независимых операций "протаскивания". Теорема Н.

Если ггсходнымп даннымп для алгоритма Н служит случайная перестановка множества (1,2,...,У), та в фазе построения пирамиды с одинаковой вероятностью может получиться любая из Х!/ П (э ! э б ЛХм) возможных ггнрамид. Более того, все '1)г'/21 операций протаскивания, выполненных в течение этой фазы, равномерны в том смысле, что по достижении шага Н8 все э~ возможных значений переменной 1 равновероятны. Доказагнельство. Применим метод, который в численном анализе называется методом обратной задачи.

Пусть в качестве одного из возможных результатов выполнения протаскивания задана пирамида Кы .. Кк с корнем в узле 1. Тогда ясно, что имеется точна э~ исходных конфигураций К,'... К,', массива, которые после протаскивания дают такой результат. Все зти исходные конфигурации имеют различные значения К,', следовательно, рассуждая наоборот, можно получить ровно з1 э1чз...

эм исходных перестановок множества (1, 2,, М), которые после завершения протаскивания в позицию 1 дают конфигурацию Кы .. Км. Случай, когда 1 = 1, типичен: пусть К,... Кд — пирамида и пусть К,'... Кч— массив, который преобразуется в Кг... Км в результате протаскивания при 1 = 1, К = К,'. Если К = Ка то должны иметь место равенства К,' = К1;~яр К1;/я) = К1;ы) и т.

д. При этом К' = К для всех г', не лежащих на пути от 1 к 1. Обратно, при любом 1 в результате подобного построения получается массив К,'... К~, такой, что (а) операция протаскивания приводит к преобразованию массива К,'... К~а в КР,.Кн, и (Ь) К1,~з) > К, при 2 < (у/2) < г < Х.

Следовательно, возможна ровно )г' таких массивов К,'...К,'~ и операции протаскивании имеет равномерное распределение. (Пример доказательства этой теоремы приводится в упр. 22.) 1 Обратившись к параметрам А, В, С, В в анализе программы Н, можно видеть, что равномерная операция протаскивания, выполняемая по отношению к поддереву размером в, дает вклад (в/2)/в в среднее значение величины А. Ее вклад в среднее значение величины В равен 1 1 1 -(О+ 1+ 1+ 2+ + (18в)) = — ~~~ (18Ц = — ((в+ 1)(18в) — 2ря'~ к~ + 2) в 3 в к=с (см. упр.

1.2.4-42), и она дает вклад либо 2/в, либо 0 в среднее значение параметра Р в зависимости от того, каким является ж четным или нечетным. Несколько сложнее определить соответствующий вклад в среднее значение параметра С, так что эту задачу мы предлагаем читателю решить самостоятельно (см. упр.

26). Производя суммирование по всем операциям протаскивании, находим, что среднее значение параметра А за время построения пирамиды равно А',ч —— ~ (~ в/2)/в ) в 6 Мм). (17) Аналогичные формулы имеют место и для В, С и В, так что можно без особого труда точно вычислить эти средние значения. В следующей таблице приведены типичные результаты. Что касается асимптотикн, то в Ми можно не обращать внимания на размеры особых поддеревьев, и тогда мы найдем, например, что Х 0 Ас 1 Х 3 А~ — — — + — + — + .+0(1о8АС) = (1 — 1а)Ас+0(1ойдс), (18) 2 1 4 3 8 7 2 где а = ~ — = 1.60669 51524 15291 76378 33015 23190 92458 04805 —.

(19) 1 2к — 1 к>1 (Это значение получил Дж. У. Ренч (мл.) (Я. %'. ЪУгепсЬ, Лг.), пользуясь преобразованием ряда из упр. 27. Пол Эрдеш (Рап! Егс1ов) доказал, что а является иррациональным числом (Х 1пйап МасЛ. Яос. 12 (1948), 63 — 66), а Питер Борвейн (Ресег Вогиесп) продемонстрировал иррациональный характер многих других констант (Ргос. СашЬ. РМ1. Яос.

112 (1992), 141-146].) При больших Ю можно использовать приближенные формулы Ас 99 100 999 1000 9999 10000 10001 10002 А,'ч 19.18 19.93 196.16 196.94 1966.02 1966.82 1966.45 1967.15 в' 68.35 69.39 734.66 735.80 7428.18 7429.39 7430.07 7430.97 С)т 42. 95 42. 71 464.53 464.16 4695.54 4695.06 4695.84 4695.95 Вгс 0.00 1.84 0.00 1.92 0.00 1.97 0.00 1.73 А'„= 0.1067)У+ (-1) 0.3; В~ ш 0.74403Х вЂ” 1.31пА1; С~ — 0.47034Х вЂ” 0.8 1п 1»'; Р,'» (1.8 ж 0.2) [)»' четное]. (20) Нетрудно определить также максимальные и минимальные значении.

Для построения пирамиды требуется всего 0(1»') шагов (см. упр. 23). Этим, по существу, завершается анализ фазы построения пирамиды в алгоритме Н. Анализ фазы выбора — совсем другая задача, которая еще ожидает своего решения! Пусть пирамидальная сортировка применяется к Х элементам; обозначим через Ал~, В~к, Са и Ра средние значения величин А, В, С и Р во время фазы выбора.

Поведение алгоритма Н подвержено сравнительно малым колебаниям около эмпирически установленных средних значений А~~ — 0.152%; Ва ?У 18 Х вЂ” 2.61Х; С,~~ аа з Х 18 Л вЂ” 1.41Х; Р~о ш 18 )У ж 2. (21) Тем нс менее до сих пор не найдено адекватного теоретического объяснения поведения Ро или эмпирически подобранных значений констант 0.152, 2.61 и 1.41. Ведущие члены в выражениях для Вч и Сч, однако, очень изящно обоснованы Р.

Шаффером и Р. Седгевиком (см. упр. 30). Шаффер также доказал, что минимальное и максимальное значения Са равны 1~Т18 Х и 1~Х 1БА1 соответственно. УПРАЖНЕНИЯ б. (МЗУ) (а) Пусть а~ ат...ал — перестановка множества (1,2,...,?»') с С циклами, 1 инверсиями и такая, что при ее сортировке с помощью программы Б выполняется В обменов на правосторонний максимум. Докажите, что 2В < 1 4- Аг — С. [Указание. См, упр. 5.2.2-1.] (Ь) Покажите, что 1+?»' — С < (?р~/2); следовательно, В не превышает (?»~/4]. 1.

]10] Является лн сортировка посредством простого выбора (алгорнтм Б) устойчивой? 2. ]!5] Почему в алгоритме Б более удобно находить сначала наибольший элемент, затем — намбольшнй нз оставшихся и т, д., вместо того чтобы находить сначала наименьший элемент, затем — наименьший нз оставшихся н т. д.? 3. (М21) (а) Докажите, что если алгоритм Б применяется к случайной перестановке множества (1, 2,...,?»), то в результате первого выполнения шагов 82 н БЗ получается случайная перестановка множества (1, 2,...,?у' — 1), за которой стегает 1»'.

(Иначе говоря, массив К~ .. Лк — ~ с одинаковой вероятностью может быть любой перестановкой множества (1,2,,%-1).) (Ь) Следовательно, если через Вл обозначить среднее значение величины В в программе Б, то прн условии, что исходный массив упорядочен случайным образом, имеем Вк = Нл — 1+ Вл ь (Указание. См. выражение 1.2.10-(1б).] 4. ]М25] На шаге БЗ алгоритма Б ничего не происходит, если 1 = 11 Не лучше лн перед выполнением шага БЗ проверить условие 1 = »? Чему равно среднее число случаев выполнения условия ю' = 1 на шаге БЗ, если исходный массив случаен? б. (20] Чему равно значение параметра В в анализе программы Б для исходного массива ?» ..321? 7. [М41] Найдите дисперсию параметра В в программе 8 как функцию от Ю, считая, что исходный массив случаен.

8. [84] 11окажите, что если при поиске шах(Км... „Кз) на шаге 82 просматривать ключи слева направо (Кп Кэ, ..., КЛ), а не наоборот, как в программе Б, то можно сократить число сравнений при слезующих итерациях шага 82. Напишите 811-программу, реализующую этот подход. 8. [МЯ5] Чему равно среднее число сравнений, выполняемых алгоритмом из улр. 8 для случайного исходного массива? 10. [18] Как будет выглядеть дерево, изображенное на рнс. 23, после вывода 14 из 1б первоначальных элементов? 11. [10] Как будет выглядеть дерево, изображенное на рис. 24, после вывода элемента 908? 12.

[МЯО] Сколько раз будет выполнено сравнение -оо с -оо, если применить восходящий метод, представленный на рис. 23, для упорядочения массива из 2" элементов". 13. [ЯО] (Дж. У. Дж. Уильямс (Л. гг'. Л. 17)1)(ашв).) На шаге Н4 алгоритма Н различаются три глучая: 1 < г, 1 = г и 1 > г. Покажите, что егли К > К,зл, то можно так упростить юаг Н4, что разветвление будет происходить лишь ло двум ветвям. Как следует изменить шаг Н2, чтобы обеспечить в процессе пирамидальной сортировки выполнение условия К > К,+~? 14. [10] Покажите, что простая очередь — частный случай приоритетной.

(Объясните, какие ключи нужно присваивать элементам, чтобы процедура "наибазьший нз включенных первым исключается" была эквивалентна процедуре "первым пришел — первым вышел"?) Является ли стек также частным случаем приоритетной очереди? ° 15. [МЯЯ] (Б. Э. Чартрс (В. А, СЬагсгев).) Придумайте быстрый алгоритм построения таблицы простых чисел < )г', в котором используется приоритетная очередь, чтобы избежать операций деления. [Указание. Пусть наименьший ключ в приоритетной очереди будет наименьшим нечетным непростым числом, ббльшим, чем самое последнее нечетное число, рассматриваемое как кандидат в простме числа.

Попытайтесь свести к минимуму количество элементов в этой очереди.) 16. [ЯО] Постройте эффективный алгоритм, который позволяет вставить новый «люч в данную пирамиду из и элементов, порождая пирамиду из и+ 1 элементов. 1?. [ЯО] Алгоритм нз улр. 1б можно использовать для построения пирамиды вместо метода "уменьшать 1 до 1", применяемого в алгоритме Н. Порождают ли оба метода нз одного и того же исходного массива одну н ту же пирамиду? ° 18. [Я1] (Р. У. Флойд (Н. 1Ч. Иоуб).) Во время фазы выбора в алгоритме пирамидальной сортировки ключ К, как правило, принимает довольно малые значения, и поэтому почти при всех сравнениях ла шаге Нб обнаруживается, что К < К,.

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

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

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

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