Участник:Savelin — различия между версиями
Savelin (обсуждение | вклад) (→Лемма о безопасном ребре) |
Savelin (обсуждение | вклад) |
||
Строка 25: | Строка 25: | ||
Достроим <tex> E' </tex> до некоторого минимального остовного дерева, обозначим его <tex>T_{min}</tex>. Если ребро <tex>e \in T_{min}</tex>, то лемма доказана, поэтому рассмотрим случай, когда ребро <tex>e \notin T_{min}</tex>. Рассмотрим путь в <tex>T_{min}</tex> от вершины <tex>u</tex> до вершины <tex>v</tex>. Так как эти вершины принадлежат разным долям разреза, то хотя бы одно ребро пути пересекает разрез, назовем его <tex>e'</tex>. По условию леммы <tex>w(e) \leqslant w(e')</tex>. Заменим ребро <tex>e</tex> в <tex>T_{min}</tex> на ребро <tex>e'</tex>. Полученное дерево также является минимальным остовным деревом графа <tex>G</tex>, поскольку все вершины <tex>G</tex> по-прежнему связаны и вес дерева не увеличился. Следовательно <tex>E' \cup \{e\} </tex> можно дополнить до минимального остовного дерева в графе <tex>G</tex>, то есть ребро <tex>e</tex> {{---}} безопасное. | Достроим <tex> E' </tex> до некоторого минимального остовного дерева, обозначим его <tex>T_{min}</tex>. Если ребро <tex>e \in T_{min}</tex>, то лемма доказана, поэтому рассмотрим случай, когда ребро <tex>e \notin T_{min}</tex>. Рассмотрим путь в <tex>T_{min}</tex> от вершины <tex>u</tex> до вершины <tex>v</tex>. Так как эти вершины принадлежат разным долям разреза, то хотя бы одно ребро пути пересекает разрез, назовем его <tex>e'</tex>. По условию леммы <tex>w(e) \leqslant w(e')</tex>. Заменим ребро <tex>e</tex> в <tex>T_{min}</tex> на ребро <tex>e'</tex>. Полученное дерево также является минимальным остовным деревом графа <tex>G</tex>, поскольку все вершины <tex>G</tex> по-прежнему связаны и вес дерева не увеличился. Следовательно <tex>E' \cup \{e\} </tex> можно дополнить до минимального остовного дерева в графе <tex>G</tex>, то есть ребро <tex>e</tex> {{---}} безопасное. | ||
}} | }} | ||
− | |||
− | |||
− | |||
==Cм. также== | ==Cм. также== | ||
*[[Алгоритм Прима]] | *[[Алгоритм Прима]] | ||
*[[Алгоритм Краскала]] | *[[Алгоритм Краскала]] | ||
+ | |||
+ | ==Источники информации== | ||
+ | * Кормен Т., Лейзерсон Ч., Ривест Р., Штайн К. {{---}} Алгоритмы. Построение и анализ. | ||
[[Категория: Алгоритмы и структуры данных]] | [[Категория: Алгоритмы и структуры данных]] | ||
[[Категория: Остовные деревья ]] | [[Категория: Остовные деревья ]] |
Версия 21:57, 25 декабря 2014
Необходимые определения
Рассмотрим связный неориентированный взвешенный граф , где — множество вершин, — множество ребер. Вес ребра определяется, как функция .
Определение: |
Минимальное остовное дерево графа | (англ. minimum spanning tree) — это его ациклический связный подграф, в который входят все его вершины, обладающий минимальным суммарным весом ребер.
Заметим, что граф может содержать несколько минимальных остовных деревьев. Для формулировки и доказательства леммы о безопасном ребре рассмотрим следующие определения.
Определение: |
Пусть Ребро называется безопасным, если при добавлении его в , также является подграфом некоторого минимального остовного дерева графа .Разрезом неориентированного графа Ребро (англ. cut) называется разбиение на два непересекающихся подмножества: и . Обозначается как . пересекает разрез , если один из его концов принадлежит множеству , а другой — множеству . | — подграф некоторого минимального остовного дерева графа .
Лемма о безопасном ребре
Теорема: |
Рассмотрим связный неориентированный взвешенный граф с весовой функцией . Пусть — подграф некоторого минимального остовного дерева , — разрез , такой, что ни одно ребро из не пересекает разрез, а — ребро минимального веса среди всех ребер, пересекающих разрез . Тогда ребро является безопасным для . |
Доказательство: |
Достроим до некоторого минимального остовного дерева, обозначим его . Если ребро , то лемма доказана, поэтому рассмотрим случай, когда ребро . Рассмотрим путь в от вершины до вершины . Так как эти вершины принадлежат разным долям разреза, то хотя бы одно ребро пути пересекает разрез, назовем его . По условию леммы . Заменим ребро в на ребро . Полученное дерево также является минимальным остовным деревом графа , поскольку все вершины по-прежнему связаны и вес дерева не увеличился. Следовательно можно дополнить до минимального остовного дерева в графе , то есть ребро — безопасное. |
Cм. также
Источники информации
- Кормен Т., Лейзерсон Ч., Ривест Р., Штайн К. — Алгоритмы. Построение и анализ.