Нижегородский государственный университет им. Н.И.Лобачевского
Опубликован: 27.09.2006 | Доступ: свободный | Студентов: 3534 / 125 | Оценка: 4.44 / 4.11 | Длительность: 13:45:00
Специальности: Программист, Математик
Лекция 1:

Начальные понятия теории графов

Лекция 1: 12345 || Лекция 2 >

Некоторые специальные графы

Рассмотрим некоторые особенно часто встречающиеся графы.

Пустой граф - граф, не содержащий ни одного ребра. Пустой граф с множеством вершин \{1,2\dots n\} обозначается через O_{n}.

Полный граф - граф, в котором каждые две вершины смежны. Полный граф с множеством вершин \{1,2\dots n\} обозначается через K_{n}.

Граф K_{1}, в частности, имеет одну вершину и ни одного ребра. Очевидно, K_{1} =O_{1}. Будем считать также, что существует граф K_{0}, у которого VG=EG=\varnothing.

Цепь ( путь ) P_{n} - граф с множеством вершин \{1,2, \dots n\} и множеством ребер \left\{(1,2),(2,3)\dots (n-1,n)\right\}.

Цикл C_{n} - граф, который получается из графа P_{n} добавлением ребра (1,n).

Все эти графы при n=4 показаны на рис. 1.6


Рис. 1.6.

Графы и матрицы

Пусть G - граф с n вершинами, причем VG=\left\{1,2\dots n\right\}. Построим квадратную матрицу A порядка n, в которой элемент A_{ij}, стоящий на пересечении строки с номером i и столбца с номером j, определяется следующим образом:

\eq*{
A_{ij} =\left\{\begin{aligned} & {1,\ \t{если } \left(i,j\right)\in EG,}
\\ & {0,\ \t{если } \left(i,j\right)\notin EG.}
\end{aligned}
\right.
}

Она называется матрицей смежности графа. Матрицу смежности можно построить и для ориентированного графа, и для неориентированного, и для графа с петлями. Для обыкновенного графа она обладает двумя особенностями: из-за отсутствия петель на главной диагонали стоят нули, а так как граф неориентированный, то матрица симметрична относительно главной диагонали. Обратно, каждой квадратной матрице порядка n, составленной из нулей и единиц и обладающей двумя указанными свойствами, соответствует обыкновенный граф с множеством вершин \left\{1,2\dots
n\right\}.

Другая матрица, ассоциированная с графом - это матрица инцидентности. Для ее построения занумеруем вершины графа числами от 1 до n, а ребра - числами от 1 до m. Матрица инцидентности I имеет n строк и m столбцов, а ее элемент I_{ij} равен 1, если вершина с номером i инцидентна ребру с номером j, в противном случае он равен нулю. На рис. 1.7 показан граф с занумерованными вершинами и ребрами и его матрицы смежности и инцидентности.


Рис. 1.7.

Для ориентированного графа матрица инцидентности определяется несколько иначе: ее элемент I_{ij} равен 1, если вершина i является началом ребра j, и равен -1, если она является концом этого ребра, и он равен 0, если эта вершина и это ребро не инцидентны друг другу.

Взвешенные графы

Часто, особенно когда графы используются для моделирования реальных систем, их вершинам, или ребрам, или и тем, и другим приписываются некоторые числа. Природа этих чисел может быть самая разнообразная. Например, если граф представляет собой модель железнодорожной сети, то число, приписанное ребру, может указывать длину перегона между двумя станциями, или наибольший вес состава, который допустим для этого участка пути, или среднее число поездов, проходящих через этот участок в течение суток и т.п. Что бы ни означали эти числа, сложилась традиция называть их весами, а граф с заданными весами вершин и / или ребер - взвешенным графом.

Изоморфизм

На рис. 1.8 изображены два графа с одним и тем же множеством вершин \left\{a,b,c,d\right\}. При внимательном рассмотрении можно обнаружить, что это разные графы - в левом имеется ребро (a,c), в правом же такого нет. В то же время, если не обращать внимания на наименования вершин, то эти графы явно одинаково устроены: каждый из них - цикл из четырех вершин. Во многих случаях при исследовании строения графов имена или номера вершин не играют роли, и такие графы, один из которых получается из другого переименованием вершин, удобнее было бы считать одинаковыми. Для того чтобы это можно было делать "на законном основании", вводится понятие изоморфизма графов.


Рис. 1.8.

Определение. Графы G_{1} и G_{2} называются изоморфными, если существует такая биекция f множества VG_{1} на множество VG_{2}, что (a,b)\in EG_{1} тогда и только тогда, когда \left(f(a),f(b)\right)\in EG_{2}. Отображение f в этом случае называется изоморфизмом графа G_{1} на граф G_{2}.

Тот факт, что графы G_{1} и G_{2} изоморфны, записывается так: {G_{1} \!\cong\! G_{2}}.

Для графов, изображенных на рис. 1.8, изоморфизмом является, например, отображение, задаваемое следующей таблицей:

x (вершина графа G_1 ) a b c d
f(x) (вершина графа G_2 ) a b d c

Заметим, что в этом примере есть и другие изоморфизмы первого графа на второй.

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

Изоморфизм - бинарное отношение на множестве графов. Очевидно, что это отношение рефлексивно, симметрично и транзитивно, то есть является отношением эквивалентности. Классы эквивалентности называются абстрактными графами. Когда говорят, что рассматриваются абстрактные графы, это означает, что изоморфные графы считаются одинаковыми. Абстрактный граф можно представлять себе как граф, у которого стерты имена (пометки) вершин, поэтому абстрактные графы иногда называют также непомеченными графами.

Лекция 1: 12345 || Лекция 2 >
Петр Петров
Петр Петров

произведение графов К(2)*О(4) фактически 4 отдельных графа К(2)?

Александр Лаврентьев
Александр Лаврентьев

много инструкций вида if - then - else

Например Procedure DFS(a) опишите каким образом следует понимать вложенность инструкций. Как в языке С ? 

т.е. следующее 

if (...) then (...)

if (...) then (...)

else(...)

 

раскрывается как 

if (...) then (...)

if (...) then (...)

         else(...)

или так :

if (...) then

 {  (...)

     if (...) then (...)

              else(...)

}

обьясните пожалуйста.

 

 

Дмитрий Крюков
Дмитрий Крюков
Россия, Москва
Андрей Посохов
Андрей Посохов
Россия, Санкт-Петербург