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

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

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

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

Пусть дан алфавит С, в котором для каждого символа с Е С определены частоты г" [с). Пусть х и у — два символа из алфавита С с минимальными частотами. Пусть С' — алфавит, полученный из алфавита С путем удаления символов х и у и добавления нового символа х, так что С' = С вЂ” [х, у) 0 1х). По определению частоты г в алфавите С' совпадают с частотами в алфавите С, за исключением частоты г [з] = г [х) + г' [у). Пусть Т' — произвольное дерево, представляющее оптимальный префиксный код для алфавита С'. Тогда дерево Т, полученное из дерева Т' путем замены листа з внутренним узлом с дочерними элементами х и у, представляет оптимальный префиксный код для алфавита С.

Доказательство. Сначала покажем, что стоимость В (Т) дерева Т можно выразить через стоимость В (Т') дерева Т', рассматривая стоимости компонентов из уравнения (16.5). Для каждого символа с Е С вЂ” 1х, у) выполняется соотношение Из леммы 16.2 следует, что процесс построения оптимального дерева путем объединения узлов без потери общности можно начать с жадного выбора, при котором объединению подлежат два символа с наименьшими частотами. Почему такой выбор будет жадным? Стоимость объединения можно рассматривать как сумму частот входящих в него элементов. В упражнении !6.3-3 предлагается показать, что полная стоимость сконструированного таким образом дерева равна сумме стоимостей его составляющих. Из всевозможных вариантов объединения на каждом этапе в процедуре НиггмАм выбирается тот, в котором получается минимальная стоимость.

В приведенной ниже лемме показано, что задача о составлении оптимальных префиксных кодов обладает свойством оптимальной подструктуры. Часть!У. Усовершенствованные методы разработки и анализа 466 йт(с) = г1т (с), следовательно, г" [с] йт (с) = г" [с] йт (с). Поскольку с1т (х) = = пт (У) = Йт (а) + 1, получаем соотношение У[х] г1т (х) + Х [у] г1т (у) = (У [х] + г" [у]) (г1т (з) + 1) = = ~ [з] "т [з)+ У[х]+ У [у]) из которого следует равенство В (Т) = В (Т') + г' [х] + г" [у], В (Т~) = В (Т) — г [х] — г [у] . Докажем лемму методом от противного. Предположим, дерево Т не представляет оптимальный префиксный код для алфавита С. Тогда существует дерево Т", для которого справедливо неравенство В (Тв) < В (Т). Согласно лемме 16.2, х и у без потери общности можно считать дочерними элементами одного и того же узла.

Пусть дерево Тсч получено из дерева Т" путем замены элементов х и у листом х с частотой г" [а] = г" [х] + г" [у]. Тогда можно записать: В (Тв') = В (Тв) — г" [х] — г" [у] < В(Т) — г" [х] — г' [у] = В (Т'), что противоречит предположению о том, что дерево Т' представляет оптимальный префиксный код для алфавита С'. Таким образом, дерево Т должно представлять оптимальный префиксный код для алфавита С. П Теорема 16.4. Процедура Н11ггмлн дает оптимальный префиксный код. Доказательсгиао.

Справедливость теоремы непосредственно следует из лемм 16.2 и 16.3. и Упражнения 16.3-1. Докажите, что бинарное дерево, которое не является полным, не может соответствовать оптимальному префиксному коду. 16.3-2. Определите оптимальный код Хаффмана для представленного ниже мно- жества частот, основанного на первых восьми числах Фибоначчи. а:1 Ь:1 с:2 с1:3 е:5 й:8 д:13 1т:21 Попытайтесь обобщить ответ на случай первых и чисел Фибоначчи. 16.3-3. Докажите, что полную стоимость дерева, представляющего какой-нибудь код, можно также вычислить как сумму комбинаций частот двух дочерних узлов по всем внутренним узлам. Глава 16.

Жадные алгоритмы 467 16.3-4. Докажите, что если символы отсортированы в порядке монотонного убывания частот, то существует оптимальный код, длина слов в котором— монотонно неубывающая величина. 16.3-5. Предположим, имеется оптимальный префиксный код для множества С = (О, 1,..., п — Ц и мы хотим передать его, использовав как можно меньше битов. Покажите, как представить любой оптимальный префиксный код для множества С с помощью всего 2п — 1+ и ~18п1 битов. (Указание: для представления структуры дерева, определяемой его обходом, достаточно 2п — 1 битов.) 16.3-6. Обобщите алгоритм Хаффмана для кодовых слов в троичной системе счисления (т.е.

слов, в которых используются символы О, 1 и 2) и докажите, что с его помощью получается оптимальный троичный код. 16.3-7. Предположим, что файл данных содержит последовательность 8-битовых символов, причем все 256 символов встречаются достаточно часто: максимальная частота превосходит минимальную менее чем в два раза.

Докажите, что в этом случае кодирование Хаффмана по эффективности не превышает обычный 8-битовый юд фиксированной длины. 16.3-8. Покажите, что в среднем ни одна схема сжатия не в состоянии даже на один бит сжать файл, состоящий из случайных 8-битовых символов. (Указание: сравните количество возможных файлов с количеством сжатых файлов.) *16.4 Теоретические основы жадных методов В этом разделе в общих чертах рассматривается элегантная теория жадных алгоритмов. Она оказывается полезной, когда нужно определить, когда жадный метод дает оптимальное решение. Эта теория содержит комбинаторные структуры, известные под названием "матроиды".

Несмотря на то, что рассматриваемая теория не описывает все случаи, для которых применим жадный метод (например, она не описывает задачу о выборе процессов из раздела 16.1 или задачу о кодах Хаффмана из раздела 16.3), она находит применение во многих случаях, представляющих практический интерес. Более того, эта теория быстро развивается и обобщается, находя все больше приложений. В юнце данной главы приводятся ссылки на литературу, посвященную этой теме. Матроиды Маюироид (та1гоЫ) — это упорядоченная пара М = (Я,2), удовлетворяющая сформулированным ниже условиям. Часть 1Ч.

Усовершенствованные методы разработки и анализа 468 1. Множество Я конечное. 2. 2' — непустое семейство подмножеств множества Я (которые называются независимыми подмножествами), таких что если В Е 2 и А С В, то А Е 2. Если семейство 2' удовлетворяет этому свойству, то его называют наследственным (легей~агу). Заметим, что пустое множество 9 с необходимостью принадлежит семейству 2. 3. Если А Е 2; В Е 2' и 1А( < 1В), то существует такой элемент х Е А — В, что А 0 1х) Е 2'.

Говорят, что структура М удовлетворяет свойству замени (ехспалйе ргорепу). Термин "матроид" был введен Хасслером Уитни (Назз1ег%Ыгпеу). Он изучал матричные матроиды, элементами Я которых являются строки заданной матрицы. Множество строк является независимым, если они линейно независимы в обычном смысле. Легко показать, что эта структура задает матроид (см. упражнение 16А-2). В качестве другого примера матроида рассмотрим графовый матроид Мс = = (Яс,Х~), определенный ниже в терминах неориентированного графа С = = ('г', Е).

° Яс — множество Е ребер графа С. ° Если А — подмножество множества Е, то А е 2г: тогда и только тогда, когда множество А ациклическое, т.е. множество ребер А независимо тогда и только тогда, когда подграф Сл = (Ъ', А) образует лес. Графовый матроил Мс тесно связан с задачей о минимальном остовном дереве, подробно описанном в главе 23. Теорема 16.5. Если С = (К Е) — неориентированный граф, то Мс = (Яс, Тс)— матроид. Доказательство. Очевидно, что Яс: = Š— конечное множество. Кроме того, Тгз — наследственное семейство, поскольку подмножество леса является лесом. Другими словами, удаление ребер из ацикличесюго множества ребер не может привести к образованию циклов.

Таким образом„осталось показать, что структура Мс удовлетворяет свойству замены. Предположим, что Сл = ('г', А) и Сн = (Ъ; В) — леса графа С и что ~В( > 1А(, те. А и  — ациклические множества ребер, и в множестве В содержится больше ребер, чем во множестве А. Из теоремы Б.2 следует, что лес, в котором имеется )я ребер, содержит ровно 1'Ц вЂ” 1с деревьев.

(Чтобы доказать это другим путем, начнем с 1Ц деревьев, каждое из которых содержит толью одну вершину и не содержит ни одного ребра. Тогда каждое ребро, которое добавляется в лес, на единицу уменьшает Глава 16. Жадные алгоритмы 469 количество деревьев.) Таким образом, лес СА содержит )Ц вЂ” (А! деревьев, а лес Сн — ٠— )В! деревьев. Поскольку в лесу Сн меньше деревьев, чем в лесу СА„ в нем должно содержаться некоторое дерево Т, вершины которого принадлежат двум различным деревьям леса Сл.

Более того, так как дерево Т вЂ” связное, оно должно содержать таюе ребро (и, о), что вершины и и о принадлежат разным деревьям леса Сл. Поскольку ребро (и, о) соединяет вершины двух разных деревьев леса СА, его можно добавить в лес Сд, не образовав при этом цикла. Таким образом, структура Мг, удовлетворяет свойству замены, что и завершает доказательство того, что Мг, — матроид.

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

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

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