Тема Элементы теории графов
Лекция 1. основные понятия теории графов
1. Задачи, приводящие к понятию графа
Рассмотрим задачу, которая приведет нас к понятию графа.
Задача о кенигсбергских мостах. Судя по источникам, первой работой по теории графов является рассуждение Эйлера (1736 г.) по поводу известной в своё время задачи кенигсбергских мостах. Эта задача заключалась в следующем.
Г
ород
расположен на двух берегах реки и двух
островах. Различные части города
соединены семью мостами (рис. 1).
Можно ли, выйдя из любой точки города, пройти по всем мостам, ровно один раз и вернуться обратно в исходную точку?
Эйлер доказал невозможность такого обхода. Не вникая сейчас в метод доказательства, формализуем сначала нашу задачу. Для этого части города обозначим точками на плоскости, а мосты – линиями, соединяющими эти точки (рис. 2).
В
ышеуказанная
задача может быть теперь сформулирована
следующим образом. Можно ли, выйдя из
любой вершины графа, пройти по всем
рёбрам ровно по одному раза и вернуться
в исходную вершину? Отметим, что при
этом форма линий и положение точек на
плоскости не имеют значения.
Может показаться, что эта головоломка не имеет практического значения. Однако, если имеется сеть дорог, соединяющих некоторые пункты, и нам требуется эти дороги заминировать, то мы столкнёмся с той же проблемой, что и в задаче Эйлера.
Пусть дан набор некоторых элементов x1, x2…,xn, которые будем называть вершинами. Любая пара вершин (не обязательно различных) будет называться ребром и обозначаться uij – неориентированное ребро, соединяющее вершины xi и xj, или uij – ориентированное ребро, вдоль которого можно двигаться только из xi в xj.
Будем
говорить, что вершины xi,
xj
инцидентны ребру uij
(т.е. являются крайними точками ребра)
и соответственно ребро uij
инцидентно вершинам xi
и в xj.
При этом среди рёбер uij
могут встречаться такие, которые
соединяют одни и те же вершины. Тогда
при необходимости они нумеруются,
например,
,
и т.п. (такие рёбра будем называть
кратными).
Определение. Множество всех вершин совместно с заданными рёбрами называется графом.
Примеры.
Вершины x1,
x2,
x3
и рёбра u12,
u13
образуют граф; вершины x1,
x2,
x3,
x4
и рёбра u11,
u23,
,
образуют граф.
Если все рёбра графа являются неориентированными, то и граф называется неориентированным. Если все рёбра имеют ориентацию, то граф называется ориентированным. Если среди рёбер графа есть как ориентированные, так и неориентированные, то граф называется частично ориентированным.
Отметим, что в произвольном графе не все вершины должны быть соединены друг с другом. Если это так (т.е. любая пара различных вершин соединена хотя бы одним ребром), то граф называется полным.
Две вершины называются смежными, если они соединены хотя бы одним ребром. Два ребра называются смежными, если они инцидентны одной и той же вершине (т.е. у них есть общая вершина).
Если ребро соединяет вершину с собой, то оно называется петлёй. Обычно считается, что петли не имеют ориентации.
Если вершина не соединена ни с одно другой вершиной, то она называется изолированной.
Наиболее употребительным способом задания графа является геометрический, о чём уже говорилось в пункте 1 данного параграфа. Вершины изображаются точками (кружками), рёбра – линиями, соединяющими соответствующие вершины. При этом как расположение точек на плоскости, так и форма линий совершенно не учитываются, т.е. важен только факт связанности вершин графа.
П
оясним
указанные термины на примере. На рис. 3
изображён неориентированный граф с
вершинами x1,
x2,
x3,
x4,
x5
и рёбрами u11
(петля), u12,
,
,
u24,
,
.
Граф не является полным, так как,
например, вершины x2
и x5
не соединены. Вершина x1
инцидентна ребру u12,
но не инцидентна ребру u24.
Ребро
инцидентно вершине x3.
Рёбра u12
и
являются смежными, а x4
и x5
нет. Вершина x5
является изолированной.
Как мы видели, многие задачи связаны с рассмотрением различных путей непрерывного движения вдоль рёбер графа. Если ребро ориентированно, то движение вдоль этого ребра определенно однозначно. Если ребро не имеет ориентации, то движение допустимо в любом направлении, но при указании пути движения фактически нужно ввести ориентацию.
Любая
последовательность смежных рёбер таких,
что начало каждого следующего совпадает
с концом предыдущего, называется
маршрутом.
Например, на рис. 3 маршрутами будут
u21,
,
,
или u11,
,
,
u12,
u24
и т.п. Первый из этих маршрутов, соединяет
вершины x2
и x1,
второй - x1
и x4.
Под длиной маршрута обычно понимается количество проходимых рёбер. Маршрут называется замкнутым, если его начальная тоска совпадает с конечной. Если в маршруте рёбра не повторяются, то он называется цепью. Так, второй из приведённых выше маршрутов является цепью, а первый не
является. Замкнутая цепь называется циклом.
Если
в цепи нет повторяющихся вершин, то она
называется простой цепью. Соответственно
замкнутая простая цепь называется
простым циклом. Так на рис. 3 маршрут
,
,
является циклом,
,
- простым циклом, u42, u21,
- простой цепью.
Две вершины графа называются связанными, если существует маршрут, их связывающий. Если в графе любые его две вершины связаны, то граф называется связным.
Среди различных обходов по графам выделим следующие.
а) Цикл, проходящий через все вершины и все рёбра, причём по каждому ребру только один раз. Такой цикл называется эйлеровым.
В задаче о кенигсбергских мостах требуется установить, является ли граф эйлеровым. Условия эйлерова графа будут даны в следующем пункте.
б) Простой цикл, проходящий через все вершины графа. Такой цикл называется циклом Гамильтона. Соответственно простая цепь, проходящая через все вершины, называется гамильтоновой цепью.
Естественно, что граф может не иметь гамильтонова цикла, а может иметь их несколько. Граф может не иметь цикла Гамильтона, но иметь гамильтонову цепь.
Для
графа, изображённого на рис. 4, гамильтоновым
циклом будет, например,
,
u23,
u34,
u41;
гамильтоновой цепью - u23,
u31,
u14.
Я
сно,
что длина любой гамильтоновой цепи
равна (n – 1), а длина гамильтонова цикла
равна n, где n - число вершин графа.
Приведем без доказательств теоремы Эйлера.
Обозначим число рёбер, инцидентных вершине xi, через p(xi) и назовём это число степенью вершины xi. При наличии петель возникает некоторая неопределённость при нахождении этого числа. В зависимости от конкретной задачи иногда удобно считать за одно ребро, а иногда – за два. Здесь будем считать петлю за два ребра (т.е. считаем количество "усов", выходящих из вершины).
Теорема. 1. В любом графе число вершин с нечётными степенями чётно.
Теорема. 2. Граф является эйлеровым тогда и только тогда, когда он является связным и степени всех его вершин чётны.
Вывод: Итак, графом называется совокупность вершин и ребер.
