Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » Д. Кнут - Искусство программирования том 4 выпуск 4 - 2007

Д. Кнут - Искусство программирования том 4 выпуск 4 - 2007, страница 10

PDF-файл Д. Кнут - Искусство программирования том 4 выпуск 4 - 2007, страница 10 Практикум (Прикладное программное обеспечение и системы программирования) (37957): Книга - 4 семестрД. Кнут - Искусство программирования том 4 выпуск 4 - 2007: Практикум (Прикладное программное обеспечение и системы программирования) - PDF, страниц2019-05-09СтудИзба

Описание файла

PDF-файл из архива "Д. Кнут - Искусство программирования том 4 выпуск 4 - 2007", который расположен в категории "". Всё это находится в предмете "практикум (прикладное программное обеспечение и системы программирования)" из 4 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст 10 страницы из PDF

Например, лес (2) превращается в при нумерации его узлов в прямо-обратном порядке. Прямо-обратный н обратно-прямой порядки не просто курьез — они приносят реальную пользу. Это связано с тем, что соседние узлы при любом из этих порядков всегда находятся близко друг к другу в лесу. Например, узлы к и к + 1 являются смежными в (58) прн к = 1,4,6,8,10,13; онн радлелены только одним узлом при (с = 2,5, 7,9, 11 (если представить невидимый сверхродительский узел на вершине леса). Минутное размышление позволяет доказать по индукции, что между соседями как в прямо-обратном, так и в обратно-прямом порядке может располагаться не более двух узлов, поскольку обратно-прямой порядок всегда начинается с корня первого дерева илн его крайнего слева потомка, а прямо-обратный порядок всегда закаичиввегся корнем последнего дерева или его крайним справа потомком.

Предположим, что мы хотим сгенерировать все комбинаторные шаблоны некоторого вида и посетить их в порядке нююдобие кода Грея, так чтобы последовательные шаблоны всегда были "близки" друг к другу. Можно сформировать, по крайней мере концептуально, граф всех возможных шаблонов р с ребрами р — д для всех пар шаблонов, близких друг к другу.

Следующая теорема, открытая Миланом Секаниной (Мйап ВеЫпта) [Ярьэу РУ1пх(огИесйй галину Пшгегвйу г Вгпй, 1Чо. 412 (1960), 137-140), доказывает, что всегда возможен хороший код Грея, обеспечивающий получение одного шаблона нз другого при помощи последовательности коротких шагов. Теорема Я. Вершины любого связного графа могут быть перечислены в циклическом порядке (ее, щ,..., е„1), так что расстояние между сь и с<а+0 ~ „ле превышает 3 для 0 < й < и.

Доказатлельсшео. Необходимо найти остовное дерево графа н обойтн его в прямо- обратном порядке. 1 Ученые в области теории графов традиционно говорят, что Й-й степенью графа С является граф С~, вершины которого те же, что и у графа С, а ребро иуе присутствует в графе С тогда и только тогда, когда имеется путь длиной не более й между вершинами и н е в графе С. Это позволяет сформулировать теорему Я более кратко при п > 2: куб связного графа гамильтонов. Прямо-обратный обход полезен также в случае, когда мы хотим без циклов посетить узлы дерева при помощи ограниченного количества шагов. Алгоритм 44 (Прямо-обратный преемник в трижды связанном лесу). Если Р указывает на узел в лесу, представленном связямн РАВЕИТ, СНПЭ и 31В, соответствующими родителю каждого узла, его крайнему слева потомку и правому сделано для вувуъкпИанаса.ого 7.2.1 ГЕНЕРАЦИЯ ОСНОВНЫХ КОМБИНАТОРНЫХ ОБЪЕКТОВ 45 брату, то данный алгоритм вычисляет узел й, следующий за Р в прямо-обратном порядке.

Предполагается, что известен уровень 1., на котором в лесу находится узел Р; значение 1. обновляется так, что указывает уровень узла й. Если Р— последний узел в прямо-обратном порядке, алгоритм устанавливает Я ~- Л и Ь вЂ” — 1. (41. [Прямой или обратный7] Если 1. четно, перейти к пшгу (44. (42. [Продолжение обратно-прямое.! Установить й - 318(Р). Перейтн к шагу (48, если й Р. Л. ь43.

[Перемещение вверх.] Установить Р РАВЕНТ(Р) и 1. — 1. — 1. Перейти к шагу ()7. (44. [Продолжение прямо-обратное.] Если СН1ЬР(Р) = Л, перейти к шагу (17. (Аб. [Перемещение вниз.) Установить й ~ — СН1ЬВ(Р) и Ь ~- Ь + 1. С[В. [Перемещение вниз при наличии возможности.] Если СНТЬВ(й) ~ Л, установить й - СНТЬВ(й) и Ь - Ь+ 1. Завершить работу алгоритма. (47. [Перемещение вправо илн вверх.[ Если 318(Р) ф Л, установить й - 318(Р)", в противном случае установить й — РАВЕНТ(Р) и 1.

— Ь вЂ” 1. Завершить работу алгоритма. ! Заметим, что, как и в алгоритме 2.4С, связь РАНЕНТ(Р) проверяется, только если 31В(Р) = Л. Полный обход представляет собой путешествие червя вокруг леса, наподобие (3): червь "видит" узлы на четных уровнях прн проходе слева, а на нечетных — при проходе справа. Упражнения 1. [1о] Каким образом реконструировать строку скобок (1) при проползании червя цо бинарному дереву (4)7 2. [80] (Ш. Закс (8. Еа)гв), 1980.) МодиФицируйте алгоритм Р таким образом, чтобы он выдавал сочетания х~гз...

з„из (8) вместо строк скобок а1от... аз„. ь 3. [ЕУ] Докажите, что (11) преобразует с1 зт... г„в таблицу инверсий с1 сз... с„. 4. [80] Истинно или ложно утверждение: если строки а1... аз„сгенернрованы в лексикографическом порядке, то в том же порядке находятся строки 41... 4„, з1... с„, р| ° ри и с1 ° сч. б, [10] Какие таблицы 41... д„, а1... з„, р1 ...Р„и с1... с, соответствуют строке вложенных скобок (1) 7 ~ 6. [00] Какое соошоешсшоие (см. последний столбец табл. 1) сопоставляется строке (1)7 7.

[10] а) В каком состоянии находится строка а1аз... аз„при завершении работы алгоритма Р7 сделано для мчинлп(апаТа.ого 46 КОМБИНАТОРНЫЙ ПОИСК о) Что содержится в массивах 111з... 1„и г1гт... г„при завершении работы алгоритма В? 8. [1в) Как выглядят таблицы 11... 1„, г1 ... г„, е1 ... е„и в1... и„, соответствующие лесу [2)? 9. [МЯО) Покажите, что таблицы с1... с„и в1... в„связаны соотношением сь = [в1 > й — 1) + [вз > й — 2) + . + [вь 1 > 1) .

10. [МОО) (Обход червя.) Для заданной строки си аз... аз„обозначим через ю превышение количества левых Скобок нвд правыми в подстроке а1аз... аз, 0 <,? < 2п. Докажите, что юе+ ю1 + ° ° + ют„= 2 [С1 + ° ° + с„) + и. 11. [11) Если Р— некоторый лес, сопрлясеннмй лес Р получается путем зеркаль- ного отражения слева направо.

Например, для 14 лесов нз табл. 1 сопряжениымн яВляются 1", 1', *', ~, "1, 11, 'Л, Фь, ~ь [солексные леса из табл. 2), Если Р соответствует некоторой строке вложенных скобок а1аз... ат„, то какой стРоке соответствУет Рл? 12. [14) Если Р— некоторый лес, трвнспвнирвваннмй лес Рг получается путем обмена в каждом бинарном дереве леса Р левых н правых связей. Например, для 14 лесов из табл. 1 транспонированнымн являются Что дает транспоннрование леса [2)? 13. [ЗО] Продолжая упражнения 11 н 12, как соотносятся прямой и обратный порядок обхода помеченного леса Р и прямой и обратный порядок обхода [а) РЯ; [) ) Ртт ю 14. [Я1) Найдите все помеченные леса Р, такие, что Рлт = Ртл.

1$. [ОО) Предположим, что  — бинарное дерево, полученное из леса Р путем связи каждого узла со своим левым братом и крайним справа потомком, как в упражнении 2.3.2-5 и последнем столбце табл. 2. Пусть Р' — лес, естественным образом соответствующий В, посредством связей с левым потомком и правым братом. Докажите, что Р' = Р~~ [с ипюльзованием обозначений из упражнений 11 и 12).

16. [ОО) Пусть Р н С вЂ” леса, а РС означает лес, полученный путем размещения деревьев Р слева от деревьев С; кроме того, определим Р ) С = [СТРТ) . Приведите интуитивное объяснение оператора ) и докажите, что он ассоциативен. сделано для ьтттьнлн$анага.ого 7.2.1 ГЕНЕРАЦИЯ ОСНОВНЫХ КОМБИНАТОРНЫХ ОБЪЕКТОВ 47 17.

[М46] Охарактеризуйте все непомеченные леса Р, такие, что глт = гтл (см. упражнение 14). 18. [Уд] Два леса называются редсшееннь»ми (сокпасе), если один из них может быть получен из другого при помощи некоторого количества операций получения сопряженного леса и/или транспонирования. Примеры в упражнениях 11 и 12 показывают, что каждый лес из четырех узлов принадлежит одному из трех классов родственности: ~ ° ° » м [;11 = ' 1 = 1 *' = 1 = 1 = „ф Изучите множество всех лесов из 15 узлов. Сколько классов зквивелентности родственных лесов они образуют? Какой класс наибольший? Какой класс наименьший? Чему равен размер класса, содержащего (2)? 10.

[38] Пусть Рм Гю..., Рл — последовательность непомеченных лесов, соответствующих вложенным скобкам, сгенерированным алгоритмом Р, и пусть См Сш..., См — последовательность непомеченных лесов, соответствующих бинарным деревьям, генерируемым алгоритмом В. Докажите, что С» = Р»~~ (с использованием обозначений из упражнений 11 и 12). (Лес Рл™ называется дральнмм к лесу Р и далее в ряде упражнений обозначается как г и.) 20.

[33] Вспомним из раздела 2.3, что стененые узла в дереве называется количество его дочерних узлов и что расширенное (ехсепдес() бинарное дерево характеризуется тем свойством, что каждый его узел имеет степень либо О, либо 2. В расширенном бинарном дереве (4) последовательность степеней узлов в прямом порядке обхода представляет собой 2200222002220220002002202200000; зта строка нулей и двоек идентична последовательности скобок (1), с тем отличием, что каждая скобка Ч' заменяется двойкой, каждая скобка Ч ' — нулем, а также добавляется дополнительный ноль.

а) Докажите, что последовательность неотрицательных целых чисел 616»...Ьл представляет собой последовательность степеней леса в прямом порядке обхода тогда н только тогда, когда оиа удовлетворяет следующему свойству для 1<6<%: 6|+ 6»+ + Ь»+ у > 6 тогда и только тогда, когда 6 < Ф. Здесь 1 = Х вЂ” 61 — Ьз — ° — Ьл — количество деревьев в лесу.

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