Основные определения теории графов — различия между версиями
Gfv (обсуждение | вклад) |
Gfv (обсуждение | вклад) |
||
Строка 49: | Строка 49: | ||
Стоит отметить, что для ориентированного графа справедлива [[Лемма о рукопожатиях|лемма о рукопожатиях]], связывающая количество ребер с суммой [[Основные определения теории графов#Степень вершины|степеней вершин]]. | Стоит отметить, что для ориентированного графа справедлива [[Лемма о рукопожатиях|лемма о рукопожатиях]], связывающая количество ребер с суммой [[Основные определения теории графов#Степень вершины|степеней вершин]]. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==Неориентированные графы== | ==Неориентированные графы== | ||
Строка 85: | Строка 71: | ||
'''Степенью''' (degree, valency) вершины <tex>\operatorname{deg} v_i</tex> в неориентированном графе называют число ребер, инцидентных <tex>v_i</tex>. Будем считать, что петли добавляют к степени вершины <tex>2</tex>. | '''Степенью''' (degree, valency) вершины <tex>\operatorname{deg} v_i</tex> в неориентированном графе называют число ребер, инцидентных <tex>v_i</tex>. Будем считать, что петли добавляют к степени вершины <tex>2</tex>. | ||
− | + | ||
− | |||
− | |||
− | |||
Остальные определения в неориентированном графе совпадают с аналогичными определениями в ориентированном графе. | Остальные определения в неориентированном графе совпадают с аналогичными определениями в ориентированном графе. | ||
Строка 101: | Строка 84: | ||
Если граф разрежен (sparse graph, <tex>|E| \ll |V^2|</tex>, то есть, неформально говоря, в нем не очень много ребер. Формально говорить не получается, потому что везде разреженные графы определяются по-разному), его лучше представить в виде списков смежности, где список для вершины <tex>v</tex> будет содержать вершины <tex>u: (v, u) \in E</tex>. Данный способ позволит сэкономить память, т.к. не придется хранить много нулей. | Если граф разрежен (sparse graph, <tex>|E| \ll |V^2|</tex>, то есть, неформально говоря, в нем не очень много ребер. Формально говорить не получается, потому что везде разреженные графы определяются по-разному), его лучше представить в виде списков смежности, где список для вершины <tex>v</tex> будет содержать вершины <tex>u: (v, u) \in E</tex>. Данный способ позволит сэкономить память, т.к. не придется хранить много нулей. | ||
− | === | + | === Пути в графах === |
+ | {{Определение | ||
+ | |definition = | ||
+ | '''Путём''' (маршрутом, path) в графе называется последовательность вида <tex>v_0 e_1 v_1 ... e_k v_k</tex>, где <tex>e_i \in E,~e_i = (v_{i-1}, v_i)</tex>; <tex>k</tex> {{---}} '''длина''' пути. | ||
+ | }} | ||
+ | |||
+ | {{Определение | ||
+ | |definition = | ||
+ | '''Циклическим путём''' (closed walk) в ориентированном графе называется путь, в котором <tex>v_0 = v_k</tex>. | ||
+ | }} | ||
− | + | {{Определение | |
− | + | |definition = | |
− | + | '''Циклическим путём''' в неориентированном графе называется путь, в котором <tex>v_0 = v_k</tex>, а так же <tex> e_i \ne e_{(i+1) \mod k}</tex>. | |
− | + | }} | |
+ | {{Определение | ||
+ | |definition = | ||
+ | '''Цикл''' (integral cycle) {{---}} это [[Отношение эквивалентности#Классы эквивалентности|класс эквивалентности]] циклических путей на отношении эквивалентности таком, что два пути эквивалентны, если <tex> \exists j \forall i : e_{(i \mod k)} = e'_{(i + j) \mod k}</tex>; где <tex>e</tex> и <tex>e'</tex> {{---}} это две последовательности ребер в циклическом пути. | ||
+ | }} | ||
+ | |||
+ | {{Определение | ||
+ | |definition= | ||
+ | '''Простой (вершинно-простой) путь''' {{---}} путь, в котором каждая из вершин графа встречается не более одного раза. | ||
+ | }} | ||
+ | {{Определение | ||
+ | |definition= | ||
+ | '''Реберно-простой путь''' {{---}} путь, в котором каждое из ребер графа встречается не более одного раза. | ||
+ | }} | ||
+ | |||
+ | {{Определение | ||
+ | |definition= | ||
+ | '''Длина пути''' {{---}} количество [[Основные определения теории графов|рёбер]], входящих в последовательность, задающую этот путь. | ||
+ | }} | ||
==См. также== | ==См. также== | ||
* [[Лемма о рукопожатиях]] | * [[Лемма о рукопожатиях]] |
Версия 01:56, 23 декабря 2013
Содержание
Ориентированные графы
Определение: |
Ориентированным графом (directed graph) | называется пара , где — множество вершин (vertices), а — множество рёбер (edges, дуг (arcs), линий (lines)).
Определение: |
Конечным графом (finite graph) | называется граф, в котором множества и — конечны. Следует заметить, что большинство рассматриваевых нами графов — конечны.
Определение: |
Ребром (edge, дугой (arc), линией (line)) ориентированного графа называют упорядоченную пару вершин | .
В графе ребро, концы которого совпадают, то есть , называется петлей (loop).
Если имеется ребро
, то говорят:- — предок (direct predecessor) .
- и — смежные (adjacent)
- Вершина инцидентна ребру
- Вершина инцидентна ребру
Инцидентность — понятие, используемое только в отношении ребра и вершины. Две вершины или два ребра не могут быть инцидентны.
Граф с
вершинами и ребрами называют - графом. -граф называют тривиальным.Заметим, что по определению ориентированного графа, данному выше, любые две вершины
нельзя соединить более чем одним ребром . Поэтому часто используют другое определение.Определение: |
Ориентированным графом | называется четверка , где и — некоторые множества, а .
Иногда граф, построенный таким образом, называют псевдографом (pseudograph). В псевдографе допускается соединять вершины более чем одним ребром. Такие ребра называются кратными (иначе — параллельные, multi-edge, parallel edge). Псевдограф без петель принято называть мультиграфом.
Также для ориентированных графов определяют полустепень исхода вершины (outdegree)
и полустепень захода вершины (indegree) .Стоит отметить, что для ориентированного графа справедлива лемма о рукопожатиях, связывающая количество ребер с суммой степеней вершин.
Неориентированные графы
Определение: |
Неориентированным графом (undirected graph) | называется пара , где — множество вершин, а — множество рёбер.
Определение: |
Ребром в неориентированном графе называют неупорядоченную пару вершин | .
Иное определение:
Определение: |
Неориентированным графом | называется тройка , где — множество вершин, — множество ребер, а . Обратите внимание, что это определение позволяет задавать графы с кратными ребрами.
Две вершины называются смежными (adjacent), если между ними есть ребро.
Степенью (degree, valency) вершины
в неориентированном графе называют число ребер, инцидентных . Будем считать, что петли добавляют к степени вершины .
Остальные определения в неориентированном графе совпадают с аналогичными определениями в ориентированном графе.
Представление графов
Матрица и списки смежности
Граф можно представить в виде матрицы смежности (adjacency matrix), где . Также в ячейке матрицы можно хранить вес ребра или их количество (если в графе разрешены паралелльные ребра). Для матрицы смежности существует теорема, позволяющая связать степень матрицы и количество путей из вершины в вершину .
Если граф разрежен (sparse graph,
, то есть, неформально говоря, в нем не очень много ребер. Формально говорить не получается, потому что везде разреженные графы определяются по-разному), его лучше представить в виде списков смежности, где список для вершины будет содержать вершины . Данный способ позволит сэкономить память, т.к. не придется хранить много нулей.Пути в графах
Определение: |
Путём (маршрутом, path) в графе называется последовательность вида | , где ; — длина пути.
Определение: |
Циклическим путём (closed walk) в ориентированном графе называется путь, в котором | .
Определение: |
Циклическим путём в неориентированном графе называется путь, в котором | , а так же .
Определение: |
Цикл (integral cycle) — это класс эквивалентности циклических путей на отношении эквивалентности таком, что два пути эквивалентны, если ; где и — это две последовательности ребер в циклическом пути. |
Определение: |
Простой (вершинно-простой) путь — путь, в котором каждая из вершин графа встречается не более одного раза. |
Определение: |
Реберно-простой путь — путь, в котором каждое из ребер графа встречается не более одного раза. |
Определение: |
Длина пути — количество рёбер, входящих в последовательность, задающую этот путь. |
См. также
Литература
- Харари Фрэнк Теория графов = Graph theory/Пер. с англ. и предисл. В. П. Козырева. Под ред. Г.П.Гаврилова. Изд. 2-е. — М.: Едиториал УРСС, 2003. — 296 с. — ISBN 5-354-00301-6
- Асанов М. О., Баранский В. А., Расин В. В. Дискретная математика: графы, матроиды, алгоритмы — НИЦ РХД, 2001. — 288 с. — ISBN 5-93972-076-5
- Кормен, Томас Х., Лейзерсон, Чарльз И., Ривест, Рональд Л., Штайн Клиффорд Алгоритмы: построение и анализ, 2-е издание. Пер. с англ. — М.:Издательский дом "Вильямс", 2010. — 1296 с.: ил. — Парал. тит. англ. — ISBN 978-5-8459-0857-5 (рус.)
- Wolfram Mathworld: Graph