Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Otvety.docx
Скачиваний:
50
Добавлен:
10.02.2015
Размер:
888.13 Кб
Скачать

13. Леса и деревья. Эквивалентность различных определений.

Определение. Граф G = (V, E,) называется лесом, если он не содержит циклов.

Теорема . Пусть в графе G = (V, E) имеется ровно n вершин, m ребер и k компонент связности. Тогда следующие условия эквивалентны:

1. G — лес;

2. каждое ребро из G — мост.

3. каждая цепь, соединяющая две вершины, единственна;

4. m+k=n;

Определение. Связный лес называется деревом.

Теорема. Пусть в связном графе G = (V, E) имеется ровно n вершин и m ребер. Тогда следующие условия эквивалентны:

1 G — дерево;

2 каждое ребро из G — мост.

3 каждая цепь, соединяющая две вершины, единственна;

4 m+1=n;

14. Теорема Кэли о количестве деревьев на n вершинах. Коды Прюфера.

Теорема (Кэли). Имеется ровно n^(n−2) деревьев с множеством вершин V = {1, 2, . . . , n}.

Определение. Рассмотрим следующую процедуру для дерева G = (V, E):

1. G1 = G.

2. Пусть дано дерево Gi = (Vi, Ei), Выберем наименьшую вершину Ai ∈ Vi степени 1.

Пусть a ∈ Ei — единственное ребро, соединяющее Ai с некоторой вершиной Bi. Определяем дерево

Последовательность B1, B2, . . . Bn−2 называется кодом Прюфера дерева G.

Теорема. (Кэли). Каждая последовательность B1, B2, . . . , Bn−2, где Bi = 1..n, является кодом

Прюфера в точности одного дерева с вершинами {1, . . . , n}.

Доказательство. Если c является кодом Прюфера некоторого дерева G с вершинами {1 . . . n}, то дерево состоит из ребер {Ai, Bi}, i = 1..n − 1, где

1. A1 — наименьшее число, отличное от B1, B2, . . . , Bn−2;

2. Ai, i = 2..n − 2, — наименьшее число, отличное от A1, . . . Ai−1, Bi, . . . , Bn−2;

3. An−1 — наименьшее число, отличное от A1, . . . An−2;

4. Bn−1 — наименьшее число, отличное от A1, . . . An−1.

15. Алгоритм Краскала нахождения остова наименьшего веса.

Пусть дан связный граф G = (V, E) с n вершинами и m ребрами. Тогда m ≥ n − 1. Если m = n − 1, то G является деревом. Если m > n − 1, то в G имеется ребро e ∈ E, не являющееся мостом.

Определение. Взвшенный граф — граф G = (V, E) с заданной функцией µ : E → R. Величина µ(e) называется весом ребра e ∈ E. Задача. По данному связному взвешенному графу G = (V, E, µ) найти остов T = (V, P) такой, что вес остова наименьший.

Алгоритм Краскала.

Пусть задан связный взвешенный граф G = (V, E, µ) с n вершинами.

Определим P0 = ∅. Повторим следующую процедуру для каждого k = 1, 2, . . . n − 1.

1. Пусть Pk−1 = {e1, e2, . . . ek−1} уже определено.

2. Найдем ребро ek ∈ E \ Pk−1 наименьшего веса такое, что ребра e1, e2, . . . ek−1, ek не образуют циклов.

3 Определим Pk = {e1, e2, . . . ek−1, ek}.

Дерево T = (V, P), где P = Pn−1, является искомым остовом наименьшего веса.

Обоснование алгоритма. Докажем, что µ(T) ≤ µ(U) для произвольного остова U = (V, S) взвешенного графа G = (V, E, µ). Предположим, что для некоторых остовов указанное неравенство не

выполняется. Назовем число k = 1, 2, . . . , n − 1 степенью близости остова U = (V, S), если k — наибольшее число такое, что e1, e2, . . . ek ∈ S. Выберем остов U = (V, S) наибольшей возможной степени близости k, что µ(T) > µ(U). Имеем k < n − 1, e1, . . . , ek ∈ S и ek+1 !∈ S.

Тогда среди ребер S ∪ {ek+1} можно выбрать цикл, содержащий также ребро e ∈ S, e 6= e1, . . . , ek. По алгоритму имеем µ(ek+1) ≤ µ(e).

Тогда U’ = (V, S’), S’ = (S ∪ {ek+1}) \ {e} имеет степень близости > k, но µ(T) > µ(U) ≥ µ(U’).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]