Главная » Просмотр файлов » В.А. Емеличев, О.И. Мельников, В.И. Сарванов, Р.И. Тышкевич - Лекции по теории графов

В.А. Емеличев, О.И. Мельников, В.И. Сарванов, Р.И. Тышкевич - Лекции по теории графов (1083735), страница 63

Файл №1083735 В.А. Емеличев, О.И. Мельников, В.И. Сарванов, Р.И. Тышкевич - Лекции по теории графов (В.А. Емеличев, О.И. Мельников, В.И. Сарванов, Р.И. Тышкевич - Лекции по теории графов) 63 страницаВ.А. Емеличев, О.И. Мельников, В.И. Сарванов, Р.И. Тышкевич - Лекции по теории графов (1083735) страница 632019-04-28СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

8 множество Е, является множеством минимальных по весу ребер для леса Т, рассматриваемого в этот момент. Поэтому согласно утверждению 75.2 граф Т'= = Т+Е1 снова является остовным лесом. Это означает, г а, г а, г а, а 4 д Ряс. 75.2 и, ус . а.иО а а~ и, иг а,=~а и,,~ Рзс. 75.3 что алгоритм строит некоторый остов графа С. Минималь- ность этого остова доказывается с помощью теоремы75.1 точно так же, как при обосновании предыдущего алгоритма. 34$ Выясним теперь быстродействие алгоритма Ф4. Для однократного выполнения каждого из пп. 3 — 6 достаточно времени 0(1) и, следовательно, построение Е~ осуществляется за время 0(~ЕС~). Таких же затрат достаточно и для однократного выполнения пп.

8 — 11. Таким образом, затраты на переход от Т к Т' = Т+ Е~ (т. е. на выполнение одной итерации) составляют О(!ЕС~) операций. Оценим теперь число итераций алгоритма. Поскольку одно ребро может быть минимальным по весу не более чем для двух компонент леса Т, то на каждой итерации!Е~! ~ р(Т)/2.А так как Т+Е~ — лес,тор(Т+Е~)( < р(Т)72, т. е.

на каждой итерации число компонент уменьшается по крайней мере вдвое. Это означает, что число итераций алгоритма не превосходит 1ол 1С!, следовательно, он строит минимальный остов за время О(!ЕС! 1ол!С!). <3 Пример 2. Применим алгоритм .Ф4 к графу, изображенному на рис. 75.2. На первой итерации будет найдено множество Е~ = (а)аг, а~аз, ашп агав, авар, адам) минимальных по весу ребер для леса, имеющего одповершинные компоненты. Остовпые леса, полученные в результате выполнения 1-й, 2-й и 3-й итераций, изображены на рис.

75.3. Последний из пих является минимальным остовом. э 76. Кратчайшие пути Пусть С =(У, А) — ориентированный взвешенный граф. Задача о кратчайшем пути состоит в отыскании пути минимального веса, соединяющего заданные начальную и конечную вершины графа С при условии, что хотя бы один такой путь существует. Начальную н конечную вершины обозначим соответственно через з и ~; (з, 1)-путь минимального веса будем называть кратчайпгим (з, 1)-путем. Вначале рассмотрим случай, когда веса всех дуг графа неотрицательпы, т. е. ю(е) > 0 для каждой дуги е ~н А.

В этом случае решение задачи о кратчайгпем пути является существенно менее трудоемким, чем в общем случае. Первый эффективный алгоритм построения кратчайшего пути в графе с неотрицательными весами дуг предложил Е. Дийкстра в 1959 г. На каждой итерации этого алгоритма всякая вершина в графа С имеет метку 1(в), которая может быть постоянной либо временной. В первом случае 1(и)- вес крат- 342 чайшего (г, и)-пути.

Если же метка ((г) временная, то 1(и) — вес кратчайшего (г, о)-пути, проходящего только через вершины с постоянными метками. Таким образом, временная метка 1(и) является оценкой сверху для веса кратчайшего (г, и)-пути, н став на некоторой итерации постоянной, она остается такой до конца работы алгоритма. Кроме 1(и), с каждой вершиной и графа 6, за исключением г, связывается еще одна метка — 0(и).

На ка»идой итерации 0(и) является номером вершины, предшествующей и в (г, о)-пути, имеющем минимальный вес среди всех (г, и)-путей, проходящих через вершины, получившие к данному моменту постоянные метки. После того как вершина 1 получила постоянную метку, с помощью меток 0(с) легко указать последовательность вершин, составляющих кратчайший (г, С)-путь. Перед началом первой итерации алгоритма вершина г имеет постоянную метку 1(г) = О, а метки ~ всех остальных вершин равны со и эти метки временные. Общая итерация алгоритма состоит в следующем. Пусть р— вершина, получившая постоянную метку 1(р) на предыдущей итерации. Просматриваем все вершины и ш Г(р), имеющие временные метки, с целью уменьшения (если это возможно) этих меток. Метка ((и) вершины и ~ Г(р) заменяется на 1(р)+ ш(р, и), если оказалось, что 1(и)~ ) ((р)+ и~(р, о).

В этом случае говорим, что вершина г получила свою метку ( из вершины р, и полагаем 0(и)= = р. Если же Цп)~ 1(р)+ ы(р, и), то метки 0 и 1 вершины и не изменяются на данной итерации. Алгоритм заканчивает работу, когда метка ((~) становится постоянной. Как уяге говорилось выше, 1(8) — вес кратчайшего (г, ~) -пути, который будем обозначать через Рз. Этот путь определяется с помощью меток 0 так: Р =(г, ..., Вз(ю), 0'р), 0(~), г), где О» = 0 (О (...

0 (о)...)) для любой вершины и ~ УС. » гав Будем считать, что граф С задан матрицей весов либо списками смежности. Алгоритм Фз Дийкстры поиска кратчайшего пути. 1. Положить 1(г):=О и считать эту метку постоянной. Положить ((с):= для всех о ~ 'г'С, и Ф г, и считать эти метки временными. Положить р:= г. 2. Для всех и ~н Г(р) с временными метками выполнить: если 1(и) ~ 1(р)+ ш(р, о), то Цр):= 1(р)+ ю(р, и) и 0(о): р. Иначе 1(и) и 0(и) не менять. 333 3. Пусть У' — множество вершин с временными метками й Найти вершину ее, такую что ((е») = ппп ((и).

гию Считать метку ((е*) постоянной меткой вершины ее. 4. р:=ее. Если р=г, то перейти к п. 5 Р(г) — вес кратчайшего пути) . Иначе перейти к п. 2. 5. Рг:=(г, ..., 0»(Г), 0'(~), О(~), г) (Р* — кратчайший путь). Конец. Прежде чем перейти к обоснованию алгоритма, сделаем три полезных замечания. 3 а м е ч а п и е 1.

Как легко видеть, алгоритм,Фг применим к смешанным и, в частности, к неориентированпым графам. Для этого достаточно каждое неориентированное ребро ие графа, имеющее вес ю(и, и), рассматривать как пару дуг (и, е) и (е, и) того же веса. Замечание 2. Если п. 4 модифицировать так, чтобы алгоритм заканчивал работу только после получения всеми вершинами постоянных меток, то он будет строить кратчайшие пути из г в каждую из остальных вершин.

Если к тому же вместе с превращением метни вершины е* в постоянную (п. 3 алгоритма) заносить дугу (0(е*), е*) в множество А*, то после окончания работы алгоритма граф П =(УС, Ае) будет корневым ориентированным остовным деревом. Это дерево называют деревом кратчайших путей из г графа С. Для любой вершины е~и УС единственный (г, е)-путь в дереве .0 является кратчайшим (г, и)-путем в графе С. 3 а м е ч а н и е 3.

Алгоритм Фг, модифицированный так, как указано в замечании 2, можно рассматривать как алгоритм построения дерева П кратчайших путей из вершины г графа С. О этой точки зрения алгоритм .Фг аналогичен алгоритму г»» построения минимального остова.

Действительно, построение дерева П состоит в последовательном увеличении уже построенного фрагмента путем добавления некоторой дуги, «выходящей» из этого фрагмента. При этом метки 1 и О играют такую же роль, как и метки а и 0 в алгоритме «»г. У т в е р ж д е н и е 76А.

Алгоритм,Ф» строит в графе С кратчайший (г, г)-путь га время О(!С!«). > Заметим вначале, что метка вершины е (((е)Ф ) равна весу (г, е)-пути, который построен алгоритмом к этому моменту. Он определяется метками О, имеющимися на заданный момент. Поэтому для доказательства опти- мальности (г, 1)-пути, соответствующего постояннои метке 1(1), достаточно доказать, что постоянная метка 1(э) каждой вершины и равна весу кратчайшего (г, э)-пути. Это утверждение будем доказывать по индукции. Пусть вершина э получила свою постоянную метку на Й-й итерации, т. е.

после й-го выполнения п. 3. При й= 1 справедливость утверждения очевидна. Предположим, что оно верно для вершин, получивших свои постоянные метки на итерациях 2, 3, ..., й — 1. Обозначим через Р' (г, и)- путь, построенный алгоритмом в результате Й итераций, а через Р* — кратчайший (г, и)-путь. По условию ю(Р )= 1(и). Пусть У~ и Гэ — множества вершин, имеющих соответственно постоянные и временные метки перед началом й-й итерации.

Рассмотрим две возмоягные ситуации: а) Путь Р* содерясит вершины из Гэ. Пусть э — первая (считая от г) такая вершина, принадлежащая Р*, а вершина э' предшествует Р яа пути Р*, т. е. (э, Р)~н ~ АР*. Согласно выбору э имеем э' ш Кь Обозначим через Р, часть пути Р* от з до б. По предположению индукции 1(и') — вес кратчайшего (г, и') -пути. Поэтому ш(Р~) = 1(э') + ю(ио) >1(н). (1) Поскольку 1(э) — временная метка, а постоянная метка 1(и) вершины и выбирается па й-й итерации как наи- меньшая нз временных, то 1(р)»1(э). Объединив это неравенство с (1), получим ю(Рэ) ) и (Р ) ) 1(э) = ш(Рэ), т, е, 1'э — кратчайший (г, и)-путь.

б) Все вершины пути Р" входят в Гь Пусть э' и э" — такие вершины, что (и', э)~в АР" и (и", э)ш АРэ. Обозначив через Р' часть пути Р* от з до и', согласно предположению индукции имеем ю(Р')»1(и ). Поэтому, если э = г", то сразу получаем неравенство ю(Р )= ю(Р')+ и(и' э)»1(э')+ ю(н' э)= ш(Р ). Допустим теперь, что э Ф и . Поскольку и получает по- стоннную метку Пн) из э, а пе из и, то э(рэ) 1(э )+ ц,(э э)»1(э-)+ ц,(э э) щ(Рэ) Таким образом, и в случае б) верно неравенство и>(Р')( ~ ю(Р*), т. е. Рэ — кратчайший (г, и)-путь. Оцепим теперь трудоемкость алгоритма.

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

Список файлов лекций

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