Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Дискретная математика / 2 3 Графы без циклов.pps
Скачиваний:
69
Добавлен:
11.05.2015
Размер:
280.58 Кб
Скачать

Графы без циклов

G X ,U

 

X

 

n,

 

U

 

m

 

 

 

 

Дерево - связный граф

Лес - несвязный

без циклов

граф без циклов

Термины:

 

Каждая компонента

корень,

лист,

связности леса есть

дерево

 

 

ветвь дерева

1

G X ,U

Свойства деревьев

X n, U m

1G Т G 0 и k G 1

2

G Т m G n G 1 и k G 1

3

G Т x, y X

 

! простая цепь x, y

4Дерево – максимальный граф без циклов

5Дерево – минимальный связный граф

6Всякое непустое дерево имеет хотя бы

один лист

2

G X ,U

Остов графа

 

X

 

n,

 

U

 

m

 

 

 

 

Остов графа G – суграф графа G с тем же числом компонент связности, но без циклов

Теорема. Количество ребер, удаляемых для построения остова графа, равно цикломатическому числу.

3

G X ,U

Остов графа

 

X

 

n,

 

U

 

m

 

 

 

 

Теорема. Количество ребер, удаляемых для построения остова графа, равно цикломатическому числу.

1)

G

- связный граф, Т

- его остов

 

 

 

G 1 m n

 

 

 

m G m T m G n 1

 

2)

G - несвязный граф

1 m n G

 

 

 

 

k

k

 

 

 

G Gi

G Gi

 

 

 

i 1

i 1

4

Остов графа

Построение остова с помощью «поиска в глубину»

Функция ПОИСК x, y ; t : t 1;

Метка y : t;

Цикл пока не конец S y Читать z из S y ; Если Метка z 0

то ДЕРЕВО : ДЕРЕВО

ПОИСК y, z ;

Конец Если; Конец Цикл;

Конец ПОИСК;

z, y ;

5

G X ,U

Код дерева

 

 

X

 

n,

 

U

 

m

 

 

 

 

 

Шаг 1

 

 

X x1, x2 , , xn

 

 

 

 

 

 

 

6x X : p x 1

Найдем

b1 min x

 

(x X )

 

p( x) 1

u1 b1, c1

 

! u1 U :

Запомним номер вершины

 

c1

Удалим из дерева вершину

b1

и ребро u1

 

X : X \ b1

U : U \ u1

6

Код дерева

G X ,U

Шаг 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Найдем b2 min

x

(x X )

 

 

p( x) 1

 

u2 b2 , c2

 

 

! u2 U :

 

Запомним номер вершины

b2

c2

u2

Удалим из дерева вершину

и ребро

X : X \ b2

U : U \ u2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и т.д.

7

Код дерева

G X ,U

Шаг n-2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

min

 

(x X )

 

 

 

Найдем bn 2

x

 

 

 

 

 

 

p( x) 1

un 2

bn 2 , cn 2

 

 

 

! un 2 U :

 

 

Запомним номер вершины

cn 2

 

 

 

 

Удалим из дерева вершину

bn 2 и ребро

un 2

X : X \ bn 2

U : U \ un 2

 

 

 

 

 

 

 

 

 

 

Код дерева

 

 

 

 

 

 

 

 

 

 

 

 

 

U un 1

 

 

 

 

 

 

 

 

 

C(T ) c , c

, ,

c

n 2

 

 

 

 

 

 

 

 

1 2

 

 

 

8

Восстановление дерева по коду

X x1, x2 , , xn

C(T ) c1, c2 , ,

cn 2

Цикл пока C(T )

 

 

 

Найти b min

x

(x X )

 

 

x C(T )

 

(c C(T ))

c первая вершина кода

Построить ребро

u b, c

 

С : С \ с

 

X : X \ b

 

Конец цикла

Соединить ребром две вершины, оставшиеся в X

9

Теорема о количестве деревьев

X x , x

, , x

n

C(T ) c , c

, , c

n 2

 

1 2

 

1 2

 

 

Теорема Количество помеченных

nn 2

деревьев с n вершинами равно

Код дерева – упорядоченный набор из n-2 элементов, среди которых могут быть одинаковые. Каждый элемент может быть выбран n cпособами.

Количество кодов равно

nn 2

10