Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Операции над графами



Общепринятыми унарными операциями над графами являются следующие операции:

1. Удаление вершины. Обозначение H = G - v, где H и G результирующий и исходный графы соответственно, v – удаляемая вершина.

2. Удаление ребра. Обозначение H = G - e, где e – удаляемое ребро.

3. Стягивание ребра.

В определённом смысле двойственными к этим операциям являются операции:

4. Добавление вершины. Обозначение H = G + v, где v – добавляемая вершина.

5. Добавление ребра. Обозначение H = G + e, где e – добавляемое ребро.

6. Расщепление вершины.

Смысл 1,2,4,5 операций очевиден. Рассмотрим подробнее 3 и 6 операции.

Стягивание ребра { u, v } обозначает отождествление смежных вершин u и v.

Для отождествления вершин u и v графа G необходимо выполнить следующие действия:

1) H=G - u - v + v ¢ - получить граф H путем удаления из исходного графа G отождествляемых вершин u, v и добавления новой вершины v ¢.

2) в графе H соединить вершину v ¢ ребром с каждой вершиной, смежной с вершиной u, а затем с каждой вершиной, смежной с вершиной v, в графе G.

Примеры отождествления вершин и cтягивания ребра представлены на рис. 4.1.

Отметим, что в общем случае при выполнении операции отождествления вершин графа могут образоваться кратные рёбра, то есть результатом такой операции будет мультиграф. Один из таких случаев проиллюстрирован на рис. 4.2.

Пусть v - одна из вершин графа G. Разобьём множество смежных ей вершин (её окружение) на два произвольных подмножества M и N и выполним следующее преобразование графа G:

1) удалим вершину v вместе с инцидентными ей рёбрами;

2) добавим новые вершины u и w и ребро { u, w };

3) вершину u соединим ребром с каждой вершиной из множества M, а вершину w - с каждой вершиной из множества N.

Теперь рассмотрим две бинарные графовые операции: объединение и произведения графов.

Граф H =(V, E) называется объединением графов F =(V 1, E 1G =(V 2, E 2),если V = V 1È V 2, E = E 1È E 2.

       
   
 
 


Для обозначения операции объединения графов используется запись H = F È G. Пример операции объединения графов показан на рис. 4.3.

Объединение графов F =(V 1, E 1G =(V 2, E 2) называется дизъюнктивным, если V 1Ç V 2=Æ.


Аналогично определяется объединение и дизъюнктивное объединение любого множества графов, причём в последнем случае никакие два из объединяемых графов не должны иметь общих вершин.

Пусть Gi =(Vi, Ei), (i =1,2) – два графа. Произведением графов G 1´ G 2 называется граф G =(V, E), где V = V 1´ V 2 – декартово произведение множеств вершин исходных графов, а множество E формируется по правилу: вершины (u 1, u 2) и (v 1, v 2) смежные в графе G тогда и только тогда, когда или u 1= v 1, а u 2 и v 2 смежные в G 2, или u 2= v 2, а u 1 и v 1 смежные в G 2 (рис. 4.4.)


Очевидно, что число вершин графа G =(V, E), полученного в результате произведения графов G 1=(V 1, E 1) и G 2=(V 2, E 2), равно произведению числа вершин графов G 1 и G 2, то есть | V |=| V 1|×| V 2|, а число рёбер определяется так: | E |=| V 1|×| E 2|+| V 2|×| E 1|.

С помощью операции произведения вводится понятие n - мерного куба, n -мерный куб Qn определяется рекуррентно:

1) Q 1= K 2, где K 2 – полный граф порядка 2,

2) Qn = K 2´ Qn -1, n >1.

Очевидно, что Qn – граф порядка 2 n, вершины которого можно представить (0,1)-векторами длины n таким образом, что две вершины будут смежные тогда и только тогда, когда соответствующие векторы различаются ровно в одной координате.

Упражнения:

1. Нарисуйте кубы Q 1, Q 2 и Q 3. Определите число рёбер n-мерного куба.

2. Постройте алгоритмы, реализующие операции над графами. Какие структуры данных для хранения графов удобнее при реализации тех или иных операций?





Дата публикования: 2015-01-04; Прочитано: 1520 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...