Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2Diskretnaya_matematika_-_2_semestr.doc
Скачиваний:
46
Добавлен:
26.09.2019
Размер:
5.82 Mб
Скачать

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 от-но -конфликтующие, если

  1. =Г(G1) Г(G2)= 2.) 2 -цепи, L1 G1, L2 G2 , которые без

Нельзя уложить одновременно ни в какую грань Г

Пусть G-плоская укладка нек-ого подграфа гр. G. Для каждого сег , от-но находим мн-во допустимых граней.

Тогда могут быть только 3 случая( и только 3)

  1. сегм для которого Г( = . В этом случае G не планарен

  2. нек-ого сегмента ! Допуст. Грань Г. Тогда можно расположить любой сег. в грани Г, при этом грань Г разобьется на 2 грани

  3. мн-ва |Г( )| 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. Выберем простой цикл

Группа 118 С = { } Он разбивает плоскость на 2 грани Г1, Г2

V8 V7 V6 V7

(28)Пусть = С = ( )

Шаг 2 Нарисуем = С и сегменты исходного графа G от-но

V 1 V2 V3 V4

Прямоугольник 116 Г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 (возникает новый граф )