Матричные представления графов
ЭЛЕМЕНТЫ ТЕОРИИ ГРАФОВ ОСНОВНЫЕ ПОНЯТИЯ И ОПРЕДЕЛЕНИЯ Теория графов — это раздел математики, включающий в себя систему терминов и обозначений, которые позволяют сравнительно просто описывать сложные процессы и явления. Началом возникновения теории графов явилась задача о кенигсбергских мостах, которую решил Л. Эйлер. Задача заключалась в том, чтобы пройти по семи мостам только один раз и вернуться в исходную часть города. Само название «граф» предполагает графическую интерпретацию изучаемого явления. Графом G = (X,U) называется совокупность двух множеств: непустого множества X (вершин) и множества U (ребер), т.е. Обычно граф изображают диаграммой: вершины — точками или кружочками, а ребра — линиями. Если ребра графа ориентированы, т.е. показаны стрелкой от вершины к вершине, то они называются дугами, а такой граф называется ориентированным или орграфом (рис. 10.1). Если ребра не имеют ориентации, то граф называется неориентированным или неографом (рис. 10.2). Каждая дуга соединяет две вершины графа, одна из которых является начальной, другая конечной и направлена от первой вершины ко второй. Обозначают дуги: U1 = (xvx2), U1 или (xv x2). Рис. 10.1. Орграф Рис. 10.2. Неограф Для орграфа на рис. 10.1 соответствие Т(х]) = {х2,х3,х4}, т.е. вершины х2, хг, х4 являются конечными вершинами дуг, у которых начальной вершиной будет xv Примеры. Г(х2) = { х1,х3} (рис 10.1); Г (х5) = — пустое множество; Г(х3) = { х4,х3 } В случае неографа, предполагается, что соответствие Г задает такой ориентированный граф, который получается из исходного графа заменой: каждого ребра двумя противоположно направленными дугами, соединяющими те же вершины. Например, для неографа, приведенного на рис. 10.2, Г(х3) = { х1, х2, х3 } и т.д.
Так как Г(хi) представляет множество вершин хк ξ X, для которых в G существует дуга (хк, хi), то через Г-1 (хi) обозначают множество вершин хк для которых в графе существует дуга (хк, хi), и называют обратным соответствием. Например, для орграфа G, рис. 10.3 Рис. 10.3 Если отображение Г(хi) распространяется не на одну вершину, а на множество вершин Хm = {x1, х2,..., хm}, то под Г(хm) понимают объединение Г(х1) U Г(х2) U... U Г(хm) Например, для орграфа рис. 10.3 соответствиями будут Г({х2, х3}) = {x1 х5}, Г({х1, х4}) = {х2, х3, х5, х6}. Отображение Г(Г(хi)) записывают Г2(хi). Тройное отображение Г(Г(Г(хi))) записывают Г3(хi) и т.д. Для орграфа, рис. 10.3 запишем С каждой вершиной графа связаны два множества (соответствия Г+(хi) и Г-(хi)). Г+(х) — множество тех смежных с хi - вершин, в которые заходят дуги из хi. Г-(хi) — множество таких вершин смежных с хi, из которых выходят дуги, заканчивающиеся в хi. Вершины xi и хк называются смежными, если существует дуга (ребро) U(хi,хк) соединяющая их. Например, (x1,x2), (x1, х3), (x1, x4), вершины х2 и х3 не являются смежными, рис. 10.1. Если вершины хi и хк являются концами дуги U (хi,хк), то говорят, что эти вершины инцидентны дуге U (или дуга U инцидентна вершинам хi,хк). Степенью или валентностью вершины графа называется количество инцидентных ей дуг (ребер) и обозначается d(xi) = Г(xi). Например, d(x1) = 4, d(x2) = 2 (рис. 10.1). Вершина, степень которой равна нулю, называется изолированной d(x5) = 0 (рис. 10.1). Число дуг орграфа, которые имеют вершину хi своей начальной вершиной называется полустепенью исхода и обозначается d+(xi). Аналогично, количество дуг орграфа, которые имеют вершину хк конечной вершиной, называется полустепенью захода и обозначается d-(xi). Например, d+(x1) = 3, d+(x2) = 1, d-(x1) = 1, d-(x4) =.2.. (рис. 10.1). Теорема Эйлера. Сумма степеней вершин графа равна удвоенному количеству дуг (ребер):
где n — число вершин графа, m — число дуг. Следствие 1. Число вершин нечетной степени всегда четно. Следствие 2. Сумма полустепеней вершин орграфа равна удвоенному числу дуг: Путем (или ориентированным маршрутом) орграфа называется последовательность дуг, в которой конечная вершина любой дуги, отличной от последней, является начальной вершиной следующей. Например, пути из вершины х1 в вершину х4 орграфа рис. 10.1. Ориентированной цепью (орцепью) или простым путем называется такой путь, в котором каждая дуга используется не более одного раза. Простой орцепью (элементарным путем) называется путь, в котором каждая вершина графа применяется не более одного раза. Маршрут — это неориентированный «двойник» пути, и это понятие рассматривается в тех случаях, когда можно пренебречь направленностью дуг в орграфе. Маршрутом называется последовательность ребер u1, u2,...,un, в которой каждое ребро ui, за исключением, возможно, первого и последнего ребер, связано с ребрами ui-1 и ui+1 своими двумя концевыми вершинами. Последовательность дуг (10.1) (10.2) (10.3)
в орграфе, рис. 10.4, являются маршрутами. Черта над дугой указывает исключение ориентации дуг, т.е. дуги рассматриваются как ребра. Маршруты различают простые и цепи (ребро в таком маршруте используется только один раз) и элементарные или простые цепи, в которых вершина встречается только один раз. Например, маршрут М1 (10.1) — простой маршрут (цепь) и элементарный маршрут М2 (10.2) является простым маршрутом (цепью), М3 (10.3) не является ни цепью, не простой цепью. Петлей называется дуга графа, у которой начальная и конечные вершины совпадают и6(х3,х2) (рис. 10.1). Путь и1, и2,, и 3,...., иn называется замкнутым, если внем конечная вершина дуги ип совпадает с начальной вершиной дуги u1 Замкнутые пути в орграфах называются контурами. Замкнутые маршруты (цепи) в неографах называются циклами. Если дугам орграфа G ставится в соответствие какое-либо число, то говорят, что дуга имеет пропускную способность, величина которой — расстояние между вершинами или время прохождения точки, илиобъем
Рис. 10.4 перевозимого и т.д. Если дуга u = (xi,xk), приписывается число cik, называемое пропускной способностью дуги, а граф G называется графом со взвешанными дугами.
10.2. Разновидности графов 1. Подграфы или суграфы Пусть дан граф G = (X,U) (рис. 10.5). Остовным подграфом Gp графа G называется граф, для которого X = X, т.е. остовный граф имеет то же самое множество вершин, но множество дуг подграфа Gp является подмножеством множества дуг исходного графа (рис. 10.6). Порожденным подграфом Gt, называется граф Gt = (Хt, Гt), для которого и для каждой вершины т.е. порожденный подограф состоит из подмножества вершин Хt множества вершин исходного графа и всех таких дуг графа G, у которых конечные и начальные вершины принадлежат подмножеству Xt (рис. 10.7). Подграфом Gn = (Хn, Un) или частичным подграфом G = (X,U) является граф, для которого выполняется условие (рис. 10.8). 2.Граф G = (X,U) называется полным, если для любой пары вершин существует дуга (ребро). Примером такого графа является любой многоугольник с проведенными в нем всеми диагоналями, а каждая вершина имеет петлю (рис. 10.10). 3.Граф G = (X,U) называется симметричным (рис. 10.9), если в множестве дуг U для любой дуги (xi,xk) существует также противоположно направленная дуга (хк, хi). В противоположном случае граф называется ассиметричным (рис. 10.8).
Рис. 10.5
Рис. 10.6 Рис. 10.7 Рис.10.8
Рис. 10.9
Рис. 10.10 4. Двудольным графом (биграфом или четным) G = (Х,U) называется такой граф, у которого множество X вершин разделено на два непересекающихся множества Х1 и Х2, т.е. причем всякое ребро (дуга) из U соединяет вершину из Х1 с вершиной из Х2. Множества Х1 и Х2 называются долями такого графа (рис. 10.11). Рис. 10.11 5. Мультиграфом называется граф, у которого две смежные вершины хi и хк соединены более чем одной дугой (ребром) в одном и том же направлении (рис. 10.12).
Рис. 10.12 Наибольшее число дуг (ребер) графа определяет его кратность. 6. Изоморфные графы Термин «изоморфный» означает в переводе с латинского (иос — равный, одинаковый и морфи — форма, вид), т.е. одинаковый по форме. Графы на плоскости можно представить различными диаграммами. Два графа G1 и G2 называются изоморфными, если они имеют одно и то же число вершин и две любые вершины хi и хк одного графа соединены ребром (дугой), то и соответствующие им вершины другого графа тоже соединены ребром (рис. 10.13). Обозначаются G1 ~ G2.
На рис. 10.13 указаны три изоморфных графа G1, G2, G3.
Рис. 10.13 7. Древовидные графы являются простейшим классом графов и самым распространенным видом графов, применяемых в программировании. Древовидным графом (деревом) называется неориентированный связный граф с числом вершин не менее двух, не содержащий петель и циклов (рис. 10.14). Рис. 10.14 Вершины, инцидентные только одному ребру дерева, называются висячими (х3 х4, х5, х6 и х7). Ориентированным называется древовидный граф без циклов, в котором полустепень захода каждой вершины, за исключением одной, например, вершины хо, равна единице, а полустепень захода вершины х0 равна нулю. Вершина х0 называется корнем дерева (рис. 10.15). Рис. 10.15 ОПЕРАЦИИ НАД ГРАФАМИ 1.Удаление вершин или ребер — это операция, с помощью которой можно из заданного графа G = (X,U) получить граф с меньшим числом элементов (вершин и ребер). 2.Добавление ребра — это операции по соединению несмежных вершин графа. 3.Объединение графов. Граф G3 является наложением графов G1 и G2 (рис. 10.16).
Рис. 10.16 4. Произведение двух графов Gl и G2 есть граф G, для которого x1• x2= G (рис. 10.17). Рис. 10.17 5. Стягивание ребра означает отождествление смежных вершин (рис. 10.18). Рис. 10.18 6. Расщепление вершин — это операция двойственная стягиванию ребра (рис. 10.19) Рис. 10.19 МАТРИЧНЫЕ ПРЕДСТАВЛЕНИЯ ГРАФОВ Графы можно задавать с помощью матриц. Построим некоторые из них. Матрицей смежности вершин графа называется квадратная матрица А = { aik } размером п х п,у которой строки и столбцы соответствуют вершинам, а элементы aik определяют из условий: Для орграфа (рис. 10.20) построить матрицу смежности A(G). Рис. 10.20 Матрицей инциденций B(G) = {bik] орграфа G = (X,U) называется прямоугольная матрица размерности п х т (п — число вершин графа, m — количество дуг), элементы которой удовлетворяют условиям: В матрице инциденций для неографа при ее построении элементы -1 следует заменить на 1. Построим матрицу B(G) инциденций для орграфа G (рис. 10.20).
Матрицей пропускных способностей дуг C(G) = {cik} графа G называется квадратная матрица размерности n х n, элементы которой определяют из условий: Матрицу пропускных способностей дуг С = (G) можно построить на основании матрицы смежности А = (G), в которой 1 заменяются значением cik пропускной способности соответствующей дуги графа. Матрицей достижимостей D(G) = {djk} графа G называется квадратная матрица размерности п х п (п — число вершин орграфа), элементы которой удовлетворяют условиям:
Пример 10.1. Для заданного графа G = (X,U) диаграммой записать в аналитической форме, составить матрицы: A(G) - смежности, B(G) — инциденций, C(G) — пропускных способностей дуг и D(G) — достижимостей. Определить экстремальные пути и маршруты из х1 в х2. Решение 1. Запишем граф G = (X,U) аналитически согласно определению X = { x1,x2,x3,x4,x5,x6 } где X — множество вершин; и — множество дуг орграфа (рис. 10.21).
Рис. 10.21
Строим матрицу смежности A(G) согласно определению: Справа и снизу матрицы смежности А указаны полустепени исхода и захода вершин соответственно. Нули в матрице A-(G) не указаны. 3. Строим матрицу инциденций B(G) на основании условий: В матрице B(G) элементы равные нулю не проставлены и соответствуют незаполненным клеткам:
В матрице B(G) сумма элементов (1 и -1) равна нулю, что может быть проверкой построения матрицы.
4. Составляем матрицу пропускных способностей дуг C(G) = {cjk} наосновании матрицы смежности A(G), заменяя элементы, равные 1 соответствующими значениями пропускных способностей дуг, указанными на орграфе (рис.10.21). Нулевые значения пропускных способностей в матрице C(G) не записаны. 5. Строим матрицу достижимостей D(G) графа согласно определению: 6. Определяем значения путей из вершины x1 в вершину x6 способом перебора без учета петли U9 7. Находим значения элементарных маршрутов из хх в х6, не учитывая ориентации дуг и исключая рассмотренные пути.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|