Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ДМ(Материлы_зан_для_ОЗО)ПоповВА.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.72 Mб
Скачать

§ 3. Деревья

Во многих задачах либо для иллюстрации сути вопроса, либо для удобства необходимых подсчётов применяют особые виды графов – графы без циклов. Приведём один пример такого рода на основе информации из поэмы Н. В. Гоголя «Мёртвые души».

Пример. Сколько различных обедов П. И. Чичиков мог насчитать из блюд, выставленных на столе П. П. Петуха, если на каждый обед выбирать только одно холодное блюдо, одно первое, одно второе, одно третье? На столе у П. П. Петуха, как написано в поэме, были выставлены из холодных блюд студень с хреном, свежая икра стерляжья, свежепосоленная белужина; на первое – уха из стерлядей, щи с грибами; на второе – осетрина жареная, телёнок жаренный на вертеле, на третье – арбузы, груши.

Отметим, что ответ на поставленный вопрос легко можно найти с помощью правила произведения из комбинаторики (см. далее главу 4). Однако можно поступить иначе: наглядно и не используя специальных знаний.

Изобразим каждое блюдо маленьким кружочком, обозначая его первой буквой названия блюда (с – студень, и – икра, б – белужина, и т. д.). При этом кружочки, соответствующие холодному, первому, второму и третьему блюдам, расположим, соответственно, на уровнях 1-2-3-4. Наконец, соответствие блюд в возможном меню обеда изобразим отрезками, соединяющими кружочки с названиями блюд. Возникнет следующая схема на рис. 3.12.

Рис. 3.12. Граф обедов П. И. Чичикова

Она показывает количество вариантов обеда П. И. Чичикова – 24. На самом деле эта схема легко и наглядно позволяет ответить и на многие другие вопросы. Например, возможно 8 различных обедов с икрой, а с арбузом – 12.

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

Определение 1. Связный граф, не содержащий циклов, называется деревом. Граф, не содержащий циклов, называется лесом.

Отметим, что граф на рис. 3.12 – лес, состоящий из трёх компонент связности, т. е. из трёх деревьев.

Сформулируем простейшие свойства деревьев.

Теорема 6. Пусть граф G имеет n вершин. Тогда следующие утверждения эквивалентны.

  1. G – дерево;

  2. G не содержит циклов и имеет ребро;

  3. G – связный граф, имеющий ребро;

  4. две любые вершины графа G соединяет единственная простая цепь;

  5. G – связный граф, который при удалении любого ребра становится несвязным.

Следствие. Пусть G – лес с n вершинами и компонентами связности. Тогда G имеет рёбер.

В конкретных ситуациях из связного графа легко получить дерево, выбрасывая, если это нужно, некоторые его рёбра, оставляя при этом нетронутыми их вершины. Получающееся таким образом дерево (со всеми прежними вершинами!) называется остовным (или скелетным) деревом графа.

Определение 2. Пусть связный граф. Всякий его подграф , являющийся деревом, называется остовным деревом.

Во многих прикладных задачах возникают связные графы, у которых каждое ребро имеет некоторую числовую характеристику, т. е. значение некоторой весовой функции. При этом приходится среди всех имеющихся у этого графа остовных деревьев находить то, у которого сумма весов его рёбер – минимальна. Такое остовное дерево для графа называется остовным деревом минимального веса.

Были разработаны несколько алгоритмов поиска такого дерева. Приведём алгоритм Дж. Краскала (1928–2010) для связного графа с числом вершин :

  1. Среди всех рёбер графа выбираем ребро минимального веса (если таких рёбер несколько – выбираем любое из них).

  2. Среди оставшихся рёбер выбираем ребро минимального веса, которое не образует цикла с выбранными ранее рёбрами (если таких рёбер несколько – выбираем любое из них).

  3. Выполняем действие 2-го пункта раза.

Построенный подграф из рёбер – искомый.