Минимальные остовные деревья нагруженных графов 
";


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Минимальные остовные деревья нагруженных графов



Граф G = (X, A) называется нагруженным, если для каждого ребра (xi, xj) определена его длина (или вес) cij.

Пусть G - связный нагруженный граф. Задача построения минимально­го остовного дерева заключается в том, чтобы из множества остовных де­ревьев найти дерево, у которого сумма длин ребер минимальна.

Приведем типичные случаи, когда возникает необходимость построе­ния минимального остовного дерева графа.

а) Нужно соединить n городов железнодорожными линиями (автомобиль­ными дорогами, линиями электропередач, сетью трубопроводов и т.д.) так, чтобы суммарная длина линий или стоимость была бы минимальной.

б)Требуется построить схему электрической сети, в которой клеммы должны быть соединены с помощью проводов наименьшей общей длины.

Зада­чу построе­ния минимального остовного дерева можно решить с помощью следующего алгоритма.

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

Шаг 1. Установка начальных значений.

Вводится матрица длин ребер C графа G.

Шаг 2. Выбрать в графе G ребро минимальной длины. Построить граф G 2, состоящий из данного ребра и инцидентных ему вершин. Положить i = 2.

Шаг 3. Если i = n, где n - число ребер графа, то закончить работу (задача решена), в противном случае перейти к шагу 4.

Шаг 4. Построить граф Gi + 1, добавляя к графу Gi новое ребро мини­мальной длины, выбранное среди всех ребер графа G, каждое из которых инцидентно какой-нибудь вершине графа Gi и одновременно инцидентно какой-нибудь вершине графа G, не содержащейся в Gi. Вместе с этим ребром включаем в Gi + 1и инцидентную ему вершину, не содержащуюся в Gi. Присваиваем i: = i +1 и переходим к шагу 3.

Пример 3.19.

Найдем минимальное остовное дерево для графа, изображенного на рис. 3.14.

Рис. 3.14

 

Шаг 1. Установка начальных значений.

Введем матрицу длин ребер C:

С = .

Шаг 2. Выберем ребро минимальной длины. Минимальная длина ребра равна единице. Таких ребер три: (x 1, x 2), (x 1, x 4), (x 2, x 4). В этом случае можно взять любое. Возьмем (x 1, x 2). Построим граф G 2, состоящий из данного ребра и инцидентных ему вершин x 1 и x 2. Положим i = 2.

Шаг 3. Так как n = 5, то i ¹ n, поэтому переходим к шагу 4.

Шаг 4. Строим граф G 3, добавляя к графу G 2новое ребро мини­мальной длины, выбранное среди всех ребер графа G, каждое из которых инцидентно одной из вершин x 1, x 2 и одновременно инцидентно какой-нибудь вершине графа G, не содержащейся в G 2 т. е. одной из вершин x 3, x 4, x 5. Таким образом, нужно выбрать ребро мини­мальной длины из ребер (x 1, x 4), (x 1, x 5), (x 2, x 3), (x 2, x 4), (x 2, x 5). Таких ребер длины единица два: (x 1, x 4) и (x 2, x 4). Можно выбрать любое. Возьмем (x 1, x 4). Вместе с этим ребром включаем в G 3вершину x 4, не содержащуюся в G 2. Полагаем i =3 и переходим к шагу 3.

Шаг 3. Так как i ¹ n, поэтому переходим к шагу 4.

Шаг 4. Строим граф G 4, добавляя к графу G 3новое ребро мини­мальной длины из ребер (x 1, x 5), (x 2, x 3), (x 2, x 5), (x 4, x 5). Такое ребро длины два одно: (x 2, x 3). Вместе с этим ребром включаем в G 4вершину x 3, не содержащуюся в G 3. Полагаем i =4 и переходим к шагу 3.

Шаг 3. Так как i ¹ n, поэтому переходим к шагу 4.

Шаг 4. Строим граф G 5, добавляя к графу G 3новое ребро мини­мальной длины из ребер (x 1, x 5), (x 2, x 5), (x 4, x 5). Таких ребер длины три два: (x 2, x 5) и (x 4, x 5). Возьмем (x 2, x 5). Вместе с этим ребром включаем в G 5вершину x 5, не содержащуюся в G 4. Полагаем i =5 и переходим к шагу 3.

Шаг 3. Так как i = n, то граф G 5 – искомое минимальное остовное дерево. Суммарная длина ребер равна 1 + 1 + 2 + 3 = 7.

Процесс построения минимального остовного дерева изображен на рис. 3.15.

Рис. 3.15

Тема 19 Булевы функции

 

Лекция 19.1 «Булевы функции»

Учебные вопросы:

1. Определение булевой функции. Формулы логики булевых функций

2. Булева алгебра (алгебра логики). Нормальные формы

3. Разложение булевой функции по переменным

4. Минимизация формул булевых функций в классе дизъюнктивных нормальных форм

 



Поделиться:


Последнее изменение этой страницы: 2016-12-15; просмотров: 549; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.224.0.25 (0.005 с.)