Основные определения теории графов — различия между версиями
(→Неориентированные графы) |
|||
| Строка 72: | Строка 72: | ||
|id = def_undirected_graph_2 | |id = def_undirected_graph_2 | ||
|definition = | |definition = | ||
| − | + | '''Неориентированным графом''' <tex>G</tex> называется тройка <tex>G = (V, E, \operatorname{ends})</tex> , где <tex>V</tex> {{---}} множество вершин, <tex>E</tex> {{---}} множество ребер, а <tex>\operatorname{ends} : E \to \{\{u, v\}, u, v \in V\}</tex>. Это определение, в отличие от предыдущего, позволяет задавать графы с кратными ребрами. | |
}} | }} | ||
| Строка 90: | Строка 90: | ||
Для матрицы смежности существует [[Связь степени матрицы смежности и количества путей|теорема]], позволяющая связать степень матрицы и количество путей из вершины <tex>v</tex> в вершину <tex>u</tex>. | Для матрицы смежности существует [[Связь степени матрицы смежности и количества путей|теорема]], позволяющая связать степень матрицы и количество путей из вершины <tex>v</tex> в вершину <tex>u</tex>. | ||
| − | Если граф разрежен (англ. ''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 = | |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) | + | '''Путём''' (маршрутом,англ. ''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), k</tex> {{---}} '''длина''' пути. |
}} | }} | ||
{{Определение | {{Определение | ||
|definition = | |definition = | ||
| − | '''Циклическим путём''' (англ. ''closed walk'') в ориентированном графе называется путь, в котором <tex>v_0 = v_k</tex>. | + | '''Циклическим путём''' (англ. ''closed walk'') в ''ориентированном графе'' называется путь, в котором <tex>v_0 = v_k</tex>. |
}} | }} | ||
{{Определение | {{Определение | ||
|definition = | |definition = | ||
| − | '''Циклическим путём''' в неориентированном графе называется путь, в котором <tex>v_0 = v_k</tex>, а так же <tex> e_i \ne e_{(i+1) \ | + | '''Циклическим путём''' в ''неориентированном графе'' называется путь, в котором <tex>v_0 = v_k</tex>, а так же <tex> e_i \ne e_{(i+1) \bmod k}</tex>. |
}} | }} | ||
{{Определение | {{Определение | ||
|definition = | |definition = | ||
| − | '''Цикл''' (англ. ''integral cycle'') {{---}} это [[Отношение эквивалентности#Классы эквивалентности|класс эквивалентности]] циклических путей на отношении эквивалентности таком, что два пути эквивалентны, если <tex> \exists j \forall i : e_{(i \mod k)} = e'_{(i + j) \ | + | '''Цикл''' (англ. ''integral cycle'') {{---}} это [[Отношение эквивалентности#Классы эквивалентности|класс эквивалентности]] циклических путей на отношении эквивалентности таком, что два пути эквивалентны, если <tex> \exists j \forall i : e_{(i \mod k)} = e'_{(i + j) \bmod k}</tex>; где <tex>e</tex> и <tex>e'</tex> {{---}} это две последовательности ребер в циклическом пути. |
}} | }} | ||
{{Определение | {{Определение | ||
|definition= | |definition= | ||
| − | '''Простой (вершинно-простой) путь''' {{---}} путь, в котором каждая из вершин графа встречается не более одного раза. | + | '''Простой (вершинно-простой) путь''' (англ. ''simple path'') {{---}} путь, в котором каждая из вершин графа встречается не более одного раза. |
}} | }} | ||
{{Определение | {{Определение | ||
| Строка 124: | Строка 124: | ||
{{Определение | {{Определение | ||
|definition= | |definition= | ||
| − | '''Длина пути''' {{---}} количество [[Основные определения теории графов|рёбер]], входящих в последовательность, задающую этот путь. | + | '''Длина пути''' (англ. ''length'') {{---}} количество [[Основные определения теории графов|рёбер]], входящих в последовательность, задающую этот путь. |
}} | }} | ||
| Строка 130: | Строка 130: | ||
{{Определение | {{Определение | ||
|definition= | |definition= | ||
| − | '''Полный граф''' {{---}} граф, в котором каждая пара различных вершин смежна. Полный граф с <tex>n</tex> вершинами имеет <tex>n(n-1)/2</tex> рёбер и обозначается <tex>K_n</tex>. | + | '''Полный граф''' (англ. ''complete graph'') {{---}} граф, в котором каждая пара различных вершин смежна. Полный граф с <tex>n</tex> вершинами имеет <tex>n(n-1)/2</tex> рёбер и обозначается <tex>K_n</tex>. |
}} | }} | ||
{{main|Дерево, эквивалентные определения}} | {{main|Дерево, эквивалентные определения}} | ||
{{Определение | {{Определение | ||
| − | |definition='''Дерево''' {{---}} связный ациклический граф. | + | |definition='''Дерево''' (англ. ''tree'') {{---}} связный ациклический граф. |
}} | }} | ||
{{Определение | {{Определение | ||
|definition= | |definition= | ||
| − | '''Двудольный граф''' или '''биграф''' {{---}} граф, множество вершин которого можно разбить на две части таким образом, что каждое ребро графа соединяет какую-то вершину из одной части с какой-то вершиной другой части, то есть не существует ребра, соединяющего две вершины из одной и той же части. Двудольный граф с <tex>n</tex> вершинами в одной доле и <tex>m</tex> во второй обозначается <tex>K_{n,m}</tex>. | + | '''Двудольный граф''' или '''биграф''' (англ. ''bipartite graph'') {{---}} граф, множество вершин которого можно разбить на две части таким образом, что каждое ребро графа соединяет какую-то вершину из одной части с какой-то вершиной другой части, то есть не существует ребра, соединяющего две вершины из одной и той же части. Двудольный граф с <tex>n</tex> вершинами в одной доле и <tex>m</tex> во второй обозначается <tex>K_{n,m}</tex>. |
}} | }} | ||
{{Определение | {{Определение | ||
|definition= | |definition= | ||
| − | '''Регулярный граф''' {{---}} граф, степени всех вершин которого равны, то есть каждая вершина имеет одинаковое количество соседей. Регулярный граф с вершинами степени <tex>k</tex> называется <tex>k</tex>‑регулярным, или регулярным графом степени <tex>k</tex>. | + | '''Регулярный граф''' (англ. ''regular graph'') {{---}} граф, степени всех вершин которого равны, то есть каждая вершина имеет одинаковое количество соседей. Регулярный граф с вершинами степени <tex>k</tex> называется <tex>k</tex>‑регулярным, или регулярным графом степени <tex>k</tex>. |
}} | }} | ||
| Строка 154: | Строка 154: | ||
==Источники информации== | ==Источники информации== | ||
| + | * [[wikipedia:ru:Граф_(математика) | Википедия {{---}} Граф]] | ||
| + | * [[wikipedia:Graph_(mathematics) | Wikipedia {{---}} Graph]] | ||
| + | * [http://mathworld.wolfram.com/Graph.html Wolfram Mathworld: Graph] | ||
* Харари Фрэнк '''Теория графов''' = Graph theory/Пер. с англ. и предисл. В. П. Козырева. Под ред. Г.П.Гаврилова. Изд. 2-е. — М.: Едиториал УРСС, 2003. — 296 с. — ISBN 5-354-00301-6 | * Харари Фрэнк '''Теория графов''' = Graph theory/Пер. с англ. и предисл. В. П. Козырева. Под ред. Г.П.Гаврилова. Изд. 2-е. — М.: Едиториал УРСС, 2003. — 296 с. — ISBN 5-354-00301-6 | ||
* Асанов М. О., Баранский В. А., Расин В. В. '''Дискретная математика: графы, матроиды, алгоритмы''' — НИЦ РХД, 2001. — 288 с. — ISBN 5-93972-076-5 | * Асанов М. О., Баранский В. А., Расин В. В. '''Дискретная математика: графы, матроиды, алгоритмы''' — НИЦ РХД, 2001. — 288 с. — ISBN 5-93972-076-5 | ||
* ''Кормен, Томас Х., Лейзерсон, Чарльз И., Ривест, Рональд Л., Штайн Клиффорд'' '''Алгоритмы: построение и анализ''', 2-е издание. Пер. с англ. — М.:Издательский дом "Вильямс", 2010. — 1296 с.: ил. — Парал. тит. англ. — ISBN 978-5-8459-0857-5 (рус.) | * ''Кормен, Томас Х., Лейзерсон, Чарльз И., Ривест, Рональд Л., Штайн Клиффорд'' '''Алгоритмы: построение и анализ''', 2-е издание. Пер. с англ. — М.:Издательский дом "Вильямс", 2010. — 1296 с.: ил. — Парал. тит. англ. — ISBN 978-5-8459-0857-5 (рус.) | ||
| − | + | ||
| − | |||
[[Категория: Алгоритмы и структуры данных]] | [[Категория: Алгоритмы и структуры данных]] | ||
[[Категория: Основные определения теории графов]] | [[Категория: Основные определения теории графов]] | ||
Версия 11:49, 23 сентября 2014
Содержание
Ориентированные графы
| Определение: |
| Ориентированным графом (англ. directed graph) называется пара , где — множество вершин (англ. vertices), а — множество рёбер. |
| Определение: |
| Конечным графом (англ. finite graph) называется граф, в котором множества и — конечны. Следует заметить, что большинство рассматриваевых нами графов — конечны. |
| Определение: |
| Ребром (англ. edge, дугой (англ. arc), линией (англ. line)) ориентированного графа называют упорядоченную пару вершин . |
| Определение: |
| Изоморфные графы (англ. isomorphic graphs) — два графа A и B называются изоморфными, если можно установить биекцию между их вершинами и соответствующими им ребрами. |
В графе ребро, концы которого совпадают, то есть , называется петлей (англ. loop).
Два ребра, имеющие общую концевую вершину, то есть и , называются смежными (англ. adjacent).
Если имеется ребро , то говорят:
- — предок (англ. direct predecessor) .
- и — смежные.
- Вершина инцидентна ребру .
- Вершина инцидентна ребру .
Инцидентность (англ. incidence) — понятие, используемое только в отношении ребра и вершины. Две вершины или два ребра не могут быть инцидентны.
Граф с вершинами и ребрами называют -графом. -граф называют тривиальным.
Заметим, что по определению ориентированного графа, данному выше, любые две вершины нельзя соединить более чем одним ребром . Поэтому часто используют другое определение.
| Определение: |
| Ориентированным графом называется четверка , где и — некоторые множества, а . |
Такой граф иногда называют псевдографом (англ. pseudograph). В псевдографе допускается соединять вершины более чем одним ребром. Такие ребра называются кратными (иначе — параллельные, англ. multi-edge, parallel edge). Псевдограф без петель принято называть мультиграфом (англ. multigraph).
| Определение: |
| Для ориентированных графов определяют полустепень исхода вершины (англ. outdegree) и полустепень захода вершины (англ. indegree) . |
Стоит отметить, что для ориентированного графа справедлива лемма о рукопожатиях, связывающая количество ребер с суммой степеней вершин.
Неориентированные графы
| Определение: |
| Неориентированным графом (англ. undirected graph) называется пара , где — множество вершин, а — множество рёбер. |
| Определение: |
| Ребром в неориентированном графе называют неупорядоченную пару вершин . |
Иное определение:
| Определение: |
| Неориентированным графом называется тройка , где — множество вершин, — множество ребер, а . Это определение, в отличие от предыдущего, позволяет задавать графы с кратными ребрами. |
| Определение: |
| Степенью (англ. degree, valency) вершины в неориентированном графе называют число ребер, инцидентных . |
Будем считать, что петли добавляют к степени вершины .
Остальные определения в неориентированном графе совпадают с аналогичными определениями в ориентированном графе.
Представление графов
Матрица и списки смежности
Граф можно представить в виде матрицы смежности (англ. adjacency matrix), где . Также в ячейке матрицы можно хранить вес ребра или их количество (если в графе разрешены паралелльные ребра). Для матрицы смежности существует теорема, позволяющая связать степень матрицы и количество путей из вершины в вершину .
Если граф разрежен (англ. sparse graph), , то есть, неформально говоря, в нем не очень много ребер. Формально говорить не получается, потому что везде разреженные графы определяются по-разному), его лучше представить в виде списков смежности, где список для вершины будет содержать вершины . Данный способ позволит сэкономить память, так как не придется хранить много нулей.
Пути в графах
| Определение: |
| Путём (маршрутом,англ. path) в графе называется последовательность вида , где — длина пути. |
| Определение: |
| Циклическим путём (англ. closed walk) в ориентированном графе называется путь, в котором . |
| Определение: |
| Циклическим путём в неориентированном графе называется путь, в котором , а так же . |
| Определение: |
| Цикл (англ. integral cycle) — это класс эквивалентности циклических путей на отношении эквивалентности таком, что два пути эквивалентны, если ; где и — это две последовательности ребер в циклическом пути. |
| Определение: |
| Простой (вершинно-простой) путь (англ. simple path) — путь, в котором каждая из вершин графа встречается не более одного раза. |
| Определение: |
| Реберно-простой путь — путь, в котором каждое из ребер графа встречается не более одного раза. |
| Определение: |
| Длина пути (англ. length) — количество рёбер, входящих в последовательность, задающую этот путь. |
Часто используемые графы
| Определение: |
| Полный граф (англ. complete graph) — граф, в котором каждая пара различных вершин смежна. Полный граф с вершинами имеет рёбер и обозначается . |
| Определение: |
| Дерево (англ. tree) — связный ациклический граф. |
| Определение: |
| Двудольный граф или биграф (англ. bipartite graph) — граф, множество вершин которого можно разбить на две части таким образом, что каждое ребро графа соединяет какую-то вершину из одной части с какой-то вершиной другой части, то есть не существует ребра, соединяющего две вершины из одной и той же части. Двудольный граф с вершинами в одной доле и во второй обозначается . |
| Определение: |
| Регулярный граф (англ. regular graph) — граф, степени всех вершин которого равны, то есть каждая вершина имеет одинаковое количество соседей. Регулярный граф с вершинами степени называется ‑регулярным, или регулярным графом степени . |
См. также
Источники информации
- Википедия — Граф
- Wikipedia — Graph
- Wolfram Mathworld: Graph
- Харари Фрэнк Теория графов = 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 (рус.)