Остовные деревья: определения, лемма о безопасном ребре — различия между версиями
Savelin (обсуждение | вклад) (→Необходимые определения) |
Savelin (обсуждение | вклад) (→Необходимые определения) |
||
Строка 5: | Строка 5: | ||
|definition = | |definition = | ||
'''Остовное дерево''' (англ. ''spanning tree'') графа <tex> G = ( V, E ) </tex> {{---}} ациклический связный подграф данного связного неориентированного графа. | '''Остовное дерево''' (англ. ''spanning tree'') графа <tex> G = ( V, E ) </tex> {{---}} ациклический связный подграф данного связного неориентированного графа. | ||
− | + | }}{{Определение | |
+ | |definition = | ||
'''Минимальное остовное дерево''' (англ. ''minimum spanning tree'') графа <tex> G = ( V, E ) </tex> {{---}} это его ациклический связный подграф, в который входят все его вершины, обладающий минимальным суммарным весом ребер. | '''Минимальное остовное дерево''' (англ. ''minimum spanning tree'') графа <tex> G = ( V, E ) </tex> {{---}} это его ациклический связный подграф, в который входят все его вершины, обладающий минимальным суммарным весом ребер. | ||
}} | }} | ||
Заметим, что граф может содержать несколько минимальных остовных деревьев. | Заметим, что граф может содержать несколько минимальных остовных деревьев. | ||
Для формулировки и доказательства леммы о безопасном ребре рассмотрим следующие определения. | Для формулировки и доказательства леммы о безопасном ребре рассмотрим следующие определения. | ||
+ | |||
+ | Пусть <tex>G'</tex> {{---}} подграф некоторого минимального остовного дерева графа <tex> G = ( V, E ) </tex>. | ||
{{Определение | {{Определение | ||
|definition = | |definition = | ||
− | |||
Ребро <tex> \langle u, v \rangle \notin G' </tex> называется '''безопасным''' (англ. ''safe edge''), если при добавлении его в <tex> G' </tex>, <tex> G' \cup \{ \langle u, v \rangle \}</tex> также является подграфом некоторого минимального остовного дерева графа <tex> G </tex>. | Ребро <tex> \langle u, v \rangle \notin G' </tex> называется '''безопасным''' (англ. ''safe edge''), если при добавлении его в <tex> G' </tex>, <tex> G' \cup \{ \langle u, v \rangle \}</tex> также является подграфом некоторого минимального остовного дерева графа <tex> G </tex>. | ||
− | + | }}{{Определение | |
+ | |definition = | ||
'''Разрезом''' (англ. ''cut'') неориентированного графа <tex> G = ( V, E ) </tex> называется разбиение <tex> V </tex> на два непересекающихся подмножества: <tex> S </tex> и <tex> T = V \setminus S </tex>. Обозначается как <tex> \langle S, T \rangle </tex>. | '''Разрезом''' (англ. ''cut'') неориентированного графа <tex> G = ( V, E ) </tex> называется разбиение <tex> V </tex> на два непересекающихся подмножества: <tex> S </tex> и <tex> T = V \setminus S </tex>. Обозначается как <tex> \langle S, T \rangle </tex>. | ||
− | + | }}{{Определение | |
+ | |definition = | ||
Ребро <tex> \langle u, v \rangle \in E </tex> '''пересекает''' (англ. ''crosses'') разрез <tex> \langle S, T \rangle </tex>, если один из его концов принадлежит множеству <tex> S </tex>, а другой {{---}} множеству <tex> T </tex>. | Ребро <tex> \langle u, v \rangle \in E </tex> '''пересекает''' (англ. ''crosses'') разрез <tex> \langle S, T \rangle </tex>, если один из его концов принадлежит множеству <tex> S </tex>, а другой {{---}} множеству <tex> T </tex>. | ||
}} | }} |
Версия 21:36, 12 января 2015
Необходимые определения
Рассмотрим связный неориентированный взвешенный граф , где — множество вершин, — множество ребер. Вес ребра определяется, как функция .
Определение: |
Остовное дерево (англ. spanning tree) графа | — ациклический связный подграф данного связного неориентированного графа.
Определение: |
Минимальное остовное дерево (англ. minimum spanning tree) графа | — это его ациклический связный подграф, в который входят все его вершины, обладающий минимальным суммарным весом ребер.
Заметим, что граф может содержать несколько минимальных остовных деревьев. Для формулировки и доказательства леммы о безопасном ребре рассмотрим следующие определения.
Пусть
— подграф некоторого минимального остовного дерева графа .Определение: |
Ребро | называется безопасным (англ. safe edge), если при добавлении его в , также является подграфом некоторого минимального остовного дерева графа .
Определение: |
Разрезом (англ. cut) неориентированного графа | называется разбиение на два непересекающихся подмножества: и . Обозначается как .
Определение: |
Ребро | пересекает (англ. crosses) разрез , если один из его концов принадлежит множеству , а другой — множеству .
Лемма о безопасном ребре
Теорема: |
Рассмотрим связный неориентированный взвешенный граф с весовой функцией . Пусть — подграф некоторого минимального остовного дерева , — разрез , такой, что ни одно ребро из не пересекает разрез, а — ребро минимального веса среди всех ребер, пересекающих разрез . Тогда ребро является безопасным для . |
Доказательство: |
Достроим до некоторого минимального остовного дерева, обозначим его . Если ребро , то лемма доказана, поэтому рассмотрим случай, когда ребро . Рассмотрим путь в от вершины до вершины . Так как эти вершины принадлежат разным долям разреза, то хотя бы одно ребро пути пересекает разрез, назовем его . По условию леммы . Заменим ребро в на ребро . Полученное дерево также является минимальным остовным деревом графа , поскольку все вершины по-прежнему связаны и вес дерева не увеличился. Следовательно можно дополнить до минимального остовного дерева в графе , то есть ребро — безопасное. |
Cм. также
Источники информации
- Кормен Т., Лейзерсон Ч., Ривест Р., Штайн К. — Алгоритмы. Построение и анализ : Вильямс, 2-е издание, 2005, С. 644-649