- •1(18).Основное понятие теории графов. Определения и разновидности графов. Способы задания графов: аналитический, геометрический, матричный. Изоморфизм графов. Примеры.
- •2(19). Операции над графами с примерами.
- •3(20) Маршруты. Цепи. Циклы.
- •4(21) Метрические характеристики графа
- •5(22) Понятие сети. Матрица весов.
- •6(23) Алгоритм Беллмана-Мура (алгоритм корректировки меток)
- •7(24). Деревья и их свойства. Лес.
- •8(25). Задача об остове экстремального веса.
- •9(26) Эйлеровы графы и циклы. Алгоритм Флерн. Гальмитоновые графы и циклы
- •10(27) Планарные графы. Укладка графа. Теорема Эйлера. Теорема Понтрягина-Куратовского. Понятие искаженности и толщины непланарных графов
- •11(28) Алгоритм плоской укладки
- •2 Итерация
- •12(29). Раскраски графов
- •13(30)Потоки в сетях.
- •14(31) Потоки минимальной стоимости.
- •15(32)Элементы теории кодирования. Кодирование как способ представления информации.
- •16(33) Общий критерий взаимной однозначности. Теорема Маркова. Примеры
- •17(34) Неравенство Макмиллана.
- •18(35) Коды с минимальной избыточностью. Примеры.
- •19(36). Оптимальное кодирование Хаффмана. Решение задачи о построении кодов с минимальной избыточностью для двоичного кодирования.
- •20(37) Самокорректирующиеся коды. Коды Хэмминга. Алгоритм построения кода Хэмминга
- •21(38) Обнаружение ошибки в кодах Хемминга.
11(28) Алгоритм плоской укладки
Алгоритм укладки гр. На пл-ти
Критерий пл-ти в практич. Применен. Не всегда просты и не дают информации о том, как строить укл-у гр. На пл-ти, если он планарен. Это вызвало появление алгоритмов, кот-е проверяют граф на планар-ть и строят его плоскую укладку, алгоритм представляет собой процесс присоед. К нек-му улож-у подгр.
гр G новой цепи L. Оба конца которой G. После этого в кач-ве выбирается любой простой цикл гр. G и процесс присоед. Новых цепей продолжается до тех пор, пока не будет построен граф. Изоморфной G или присоед. Новой простой цепи на нек-м этапе окажется невозможным, что свидетельствует о непланарности исх графа G.
ОПР. Cегментом от-но = ( ) – подграф гр. G=(V,E) cлед. 2-х видов
1.)e=(v,u) E : e , v,u
2.) связная комп-а гр G\ , дополн-я всеми ребрами графа G, инцид-и вершинам взятой комп-ы и концами этих ребер.
ОПР. Вершина v сегмента – контактная, если v . Т.к. - плоский, то он разб-м пл-ю на грани.
ОПР. Допустимой гранью для сег. от-но - грань Г (гамма) гр. сод-я все контактные вершины сег-та
Г( – мн-во допустимых граней для . Для непланарных графов может Г(G) =
Рассмотрим простую цепь L сегмента ,содержащую 2 разл. Контакт.вершины, и не содержащ. Других контактных вершин, такие цепи назыв - цепями. Всякая -цепь может быть уложена в любую грань, допустимую для данного сегмента.
ОПР. 2 cегм. G1 и G2 от-но -конфликтующие, если
=Г(G1) Г(G2)= 2.) 2 -цепи, L1 G1, L2 G2 , которые без
Нельзя уложить одновременно ни в какую грань Г
Пусть G-плоская укладка нек-ого подграфа гр. G. Для каждого сег , от-но находим мн-во допустимых граней.
Тогда могут быть только 3 случая( и только 3)
сегм для которого Г( = . В этом случае G не планарен
нек-ого сегмента ! Допуст. Грань Г. Тогда можно расположить любой сег. в грани Г, при этом грань Г разобьется на 2 грани
мн-ва |Г( )| 2. Для сегмента в этом случае можно расположить -цепь в любой допустимой грани
Шаг 1. Выбираем любой простой цикл Cгр. G. Этот цикл укладывается на плоскости и = C
Шаг 2. Находим все грани гр. и все сегменты от-но Если мн-во сегментов пусто то переходим на шаг 7. Т.епостр-а укладка графа Gна плоскости
Шаг 3. Для каждого сегмента от-но определяем мн-во допустимых граней Г( ). Если найдется сегмент для которого Г( , то исходный граф Gне планарен
Конец алгоритма, иначе шаг 4.
Шаг 4.Если сущ. Сегмент для которого имеется единственная доп-я грань Г, то происходит переход на шаг 6. Иначе шаг 5.
Шаг 5. Для нек-госег-та , для которого мощность мн-ва|Г( )|> 1
Выбираем произвольную доп. Грань
Шаг 6. Произвольная -цепь (L) сегмента помещается в грань Г. меняется на L и происходит переход к шагу 2.
Шаг 7. Пост-а укладка грG на плоскости. Конец алгоритма
Пример
Дан граф G. Выяснить, планарен ли он, в случае непланарности найти толщину и искаженность
V1 V2 V3 V4 шаг1. Выберем простой цикл
С = { } Он разбивает плоскость на 2 грани Г1, Г2
V8 V7 V6 V7
(28)Пусть = С = ( )
Шаг 2 Нарисуем = С и сегменты исходного графа G от-но
V 1 V2 V3 V4
Г2 Г1
V8 V7 V6 V7
Контактные вершины – O
Г( )={Г1,Г2} , i=1,2,3,4
Шаг 3.Г( ) , i=1,2,3,4
Шаг 4. Нет сегмента, для которого существует допустимая грань| Г( )|> 1 , i=1,2,3,4 (| Г( )|=2 , i=1,2,3,4)
Шаг 5. Любую – цепь можно уложить в грани Г1 и Г2
Выберем для укладки грань Г2 L
Шаг 6. Пусть L={ } - – цепьпоместим эту – цепь в грань Г2 (возникает новый граф )