Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
6.7. Эйлеровы графыКлассической в теории графов является следующая задача. Имеются два острова, соединенных семью мостами с берегами реки и друг с другом, как показано на рис. 6.15. Задача состоит в следующем: осуществить прогулку по городу таким образом, чтобы, пройдя по каждому мосту один раз, вернуться обратно. Решение этой задачи сводится к нахождению некоторого специального маршрута на графе.
Рис. 6.15. План расположения мостов и соответствующий ему мультиграф • Определение. Пусть Поставим в соответствие плану расположения суши и мостов, приведенному на рис. 6.15, мультиграф на рис. 6.15, в котором каждой части суши соответствует вершина, а каждому мосту — ребро, соединяющее соответствующие вершины. Теперь задача звучит так: найти эйлерову цепь (цикл) в мультиграфе. Решение этой задачи было дано • Теорема Л. Эйлера. Эйлерова цепь в псевдографе 1. Граф связный; 2. Степени внутренних вершин четные (внутренние вершины не являются началом и концом цепи); 3. Если вершины 4. Если вершины Доказательство. Даны условия 1—4. Построим эйлерову цепь. Предварительно приведем условие 3 к условию 4 включением в граф фиктивного ребра и, которым свяжем вершины Возможны два случая: 1) построенный цикл
Рис. 6.16. Объединение двух циклов в один цикл Процесс расширения продолжаем до тех пор, пока не будут включены все ребра графа в один цикл: Конструктивный характер доказательства теоремы позволяет на формальном уровне в алгоритме 6.5 записать рассмотренный поиск эйлеровой цепи. Исходный граф представлен своей структурой смежности Алгоритм 6.5. Алгоритм поиска эйлеровой цепи графа (см. скан) Частные же циклы, расширяющие • Сложность алгоритма поиска эйлеровой цепи. Число обращений к процедуре пропорциональна количеству ребер Алгоритм 6.6. Программа поиска эйлеровой цепи графа (см. скан) (см. скан) (см. скан) (см. скан) Рассмотрим пример расчета по программе алгоритма 6.6 поиска эйлеровой цепи в графе, изображенного на рис. 6.17.
Рис. 6.17. Пример расчета эйлеровой цепи графа Для программы алгоритма 6.6 исходные данные структуры смежности Данные файла Eiler.in для примера на рис. 6.17:
Результаты расчетов сохраняются в выходном файле Eiler.out со следующей структурой:
На каждом шаге показана строящаяся эйлерова цепь
|
1 |
Оглавление
|