![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Общепринятыми унарными операциями над графами являются следующие операции:
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 1)и G =(V 2, E 2),если V = V 1È V 2, E = E 1È E 2.
![]() | |||
![]() |
Для обозначения операции объединения графов используется запись H = F È G. Пример операции объединения графов показан на рис. 4.3.
Объединение графов F =(V 1, E 1)и G =(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; Прочитано: 1544 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!