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

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

DJVU-файл Т. Кормен, Ч. Лейсерзон, Р. Риверст, К. Штайн - Алгоритмы. Построение и анализ (2013), страница 13 Методы дискретной оптимизации (3258): Книга - 8 семестрТ. Кормен, Ч. Лейсерзон, Р. Риверст, К. Штайн - Алгоритмы. Построение и анализ (2013): Методы дискретной оптимизации - DJVU, страница 13 (3258) - Сту2019-09-19СтудИзба

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

DJVU-файл из архива "Т. Кормен, Ч. Лейсерзон, Р. Риверст, К. Штайн - Алгоритмы. Построение и анализ (2013)", который расположен в категории "". Всё это находится в предмете "методы дискретной оптимизации" из 8 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

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

Распознанный текст из DJVU-файла, 13 - страница

Стоимость каждого из двух подузлов на втором уровне рекурсии равна сп/2. Мы продолжаем раскрывать каждый узел дерева, разбивая его на составные части, определяемые рекуррентным соотношением, пока размеры задач не достигнут значений 1, со стоимостью с. В части (г) показано получающееся в результате дерево рекурсии. После того как дерево построено, длительности выполнения всех его узлов суммируются по всем уровням. Полное время выполнения верхнего уровня равно сп, следующий уровень дает вклад, равный с(п/2) + с(п/2) = сп, общая стоимость уровня после него составляет с(п/4) + с(п/4) + с(п/4) + с(п/4) = сп, и т.д.

В общем случае уронены (если вести отсчет сверху) имеет 2' узлов, каждый из которых дает вклад в общее время работы алгоритма, равный с(п/2'), так что общая стоимосты-го уровня равна 2' с(п/2') = сп. На нижнем уровне имеется п узлов, каждый из которых дает вклад с, что в сумме также дает время, равное сп. Общее количество уровней дерева рекурсии на рис. 2.5 равно !я и + 1, где и— количество листьев, соответствующее размеру входных данных.

Это легко понять из неформальных индуктивных рассуждений. В простейшем случае, когда и = 1, имеется всего один уровень. Поскольку !81 = О, выражение !лп + 1 дает правильное количество уровней. Теперь в качестве гипотезы индукции примем, что количество уровней рекурсивного дерева с 2' узлами равно 1л 2' + 1 = з + 1 (так как для любого 1 выполняется соотношение !я 2' = 1). Поскольку мы предположили, что количество входных элементов равно степени двойки, теперь нужно рассмотреть случай 2*+' элементов. Дерево с 2е ы узлами имеет на один уровень больше, чем дерево с 2' узлами, поэтому общее количество уровней равно (1 + 1) + 1 = !я 2'+з + 1.

Для вычисления общей стоимости, представленной рекуррентным соотношением (2.2), нужно просто просуммировать вклацы от всех уровней. Всего имеется 1кп+ 1 уровней, каждый из которых имеет стоимость сп, так что полная стоимость составляет сп(!я п + 1) = сл 1я и + сп. Пренебрегая членом более низкого порядка и константой с, в результате получаем б!(и 1я и). Упражнения Используя в качестве образца рис. 2.4, проиллюстрируйте работу алгоритма сор- тировки слиянием для массива А = (3, 41, 52, 26, 38, 57, 9, 49) .

2.3.2 Перепишите процедуру Микол так, чтобы в ней не использовались сигнальные значения. Сигналом к остановке должен служить тот факт, что все элементы массива Ь или массива В скопированы обратно в массив А, после чего в этот массив копируются элементы, оставшиеся в непустом массиве. Часмь 1 Основы б2 Воспользуйтесь методом математической индукции для доказательства того, что, когда и является точной степенью 2, решением рекуррентного соотношения Т () 2 если п = 2, 2Т(п/2)+ п, если и = 2", к > 1, является Т(п) = п!яп.

2.3.4 Сортировку вставкой можно представить в виде рекурсивной последовательности. Чтобы отсортировать массив А[1., п[, сначала нужно рекурсивно отсортировать массив А[1 .. п — 1[, после чего в этот отсортированный массив помешается элемент А[п[. Запишите рекуррентное уравнение для времени работы этой рекурсивной версии сортировки вставкой. 2.3.5 Возвращаясь к задаче поиска (см. упр, 2.1.3), нетрудно заметить, что если последовательность А отсортирована, то можно сравнить значение среднего элемента этой последовательности с искомым значением е и сразу исключить половину последовательности из дальнейшего рассмотрения.

Бинарный ноиск !Ь!лагу зеагсЬ) — это алгоритм, в котором такая процедура повторяется неоднократно, что всякий раз приводит к уменьшению оставшейся части последовательности в два раза. Запишите псевдокод алгоритма бинарного поиска (либо итеративный, либо рекурсивный). Докажите, что время работы этого алгоритма в наихудшем случае составляет Й(!К п).

2.3.б Заметим, что в цикле эгЫ!е в строках 5-7 процедуры !мзнкт!о!ч-Конт в разделе 2.1 для сканирования (в обратном порядке) отсортированного подмассива А[1..3 — 1[ используется линейный поиск. Можно ли использовать бинарный поиск (см. упр, 2.3.5) вместо линейного, чтобы время работы этого алгоритма в наихудшем случае улучшилось и стало равным 9(п 1я п)? 2.3.~ * Разработайте алгоритм со временем работы б!(п!яп), который для заданного множества Я из п целых чисел и другого целого числа х определяет, имеются ли в множестве Я два элемента, сумма которых равна х. Задачи 2.1.

Сортировка вставкой малых массивов в нроцессе сортировки слиянием Несмотря на то что с увеличением количества сортируемых элементов время сортировки методом слияний в наихудшем случае растет как 9(п !кп), а время Глана 2. Приступаем к изучению бЗ сортировки вставкой — как Й(п ), благодаря постоянным множителям на практике для малых размеров задач на большинстве машин сортировка вставкой выполняется быстрее. Таким образом, есть смысл использовать сортировку вставок в процессе сортировки методом слияний, когда подзадачи становятся достаточно маленькими.

Рассмотрите модификацию алгоритма сортировки слиянием, в котором и/к подмассивов длиной к сортируются вставкой, после чего они объединяются с помощью обычного механизма слияния. Величина к должна быть найдена в процессе решения задачи. в. Покажите, что сортировка вставкой позволяет отсортировать и/й подпоследовагельностей длиной )с каждая за время 9(пк) в худшем случае. 6. Покажите, как выполнить слияние этих подпоследовательностей за время йо(п )б(п/И)) в наихудшем случае. в.

Если такой модифицированный алгоритм выполняется за время Е!(п)с + п !б(п/й)) в наихудшем случае, то чему равно наибольшее значение й как функции от и, для которого модифицированный алгоритм в ка-обозначениях имеет то же время работы, что и стандартная сортировка слиянием? * Как следует выбирать й на практике? 2.2. Корректность пузырьковой сортировки Пузырьковая сортировка представляет собой популярный, но не эффективный алгоритм сортировки.

В его основе лежит многократная перестановка соседних элементов, нарушающих порядок сортировки. ВувнййяОкт(А) ! хогг' = 1!о А.!епдгл — 1 2 аког з = А.1епдоз позгийо г+ 1 3 НА[Я < А[3 — Ц 4 поменять А[э] и А[д — 1] местами а Пусть А' обозначает выход процедуры Впввьпзокт(А). Для доказательства корректности процедуры ВпввьпзОкт необходимо доказать, что она завершается и что А'[1] < А'[2] « . - А'[и], (2.3) где и = А. !епдг6, Что еще необходимо доказать для того, чтобы показать, что процедура В1зввьпзокт действительно выполняет сортировку? В следующих двух частях доказываются неравенства (2.3).

б. Точно сформулируйте инвариант цикла аког в строках 2-4 и докажите, что он выполняется. Доказательство должно иметь ту же структуру доказательства инварианта цикла, которая ранее использовалась в аналогичных доказательствах в данной главе. Часть 2 Основы б4 в. С помощью условия завершения инварианта цикла, доказанного в части (б), сформулируйте инвариант цикла аког в строках 1-4, который позволил бы доказать неравенства (2.3). Доказательство должно иметь ту же структуру доказательства инварианта цикла, которая использовалась ранее в аналогичных доказательствах в данной главе.

* Определите время пузырьковой сортировки в наихудшем случае и сравните его со временем сортировки вставкой. 2.3. Корректность правила Горнера Следующий фрагмент кода реализует правило Горнера для вычисления поли- нома н Р(х) = ~~~ аьх к=о = ао + х(аз + х(аз + . + х(а„~ + ха„) )) для заданных коэффициентов ао, аы..., а„и значения х.

у=О 2 Гог г = и <$озгпйо 0 3 у=а +х у а Чему равно время работы этого фрагмента кода правила Горнера в б)-обозначениях? 6. Напишите псевдокод, реализующий алгоритм обычного вычисления поли- нома, когда каждое слагаемое полинома вычисляется отдельно. Определите асимптотическое время работы этого алгоритма и сравните его со временем работы алгоритма, основанного на правиле Горнера. ж Рассмотрим следующий инвариант цикла. В начале каждой итерации цикла 1ог в строках 2 и 3 н — (1.ь1) ь у = ~ аььг~-1х а=о Рассматривайте сумму без членов как равную нулю. Следуя структуре доказательства инварианта цикла, которая использовалась ранее в данной главе, воспользуйтесь указанным инвариантом цикла, чтобы показать, что по завершении работы у = 2 ь аьх~.

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