Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Дискретная математика в программировании. Практикум. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
12.08.2026
Размер:
1 Мб
Скачать

Суммарный вес построенного остова равен 125.

Построение Гамильтонова цикла. Цикл (цепь) в графе G

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

Алгоритм Робертса и Флореса для построен гамильтонова цикла включает следующие шаги.

1.Строится матрица М с элементамиmi j , число строк в которой равно максимальной степени вершин графа, число

столбцов равно количеству вершин n. Элемент m i j - i-я вершина, (например, хk) смежная с вершиной хj. Вершины в столбцах матрицы М упорядочены.

2.р = x1, где x1 - начальная вершина. S={x1}, где S - множество вершин строящегося гамильтонова цикла.

3. Если в столбце матрицы, соответствующемМ вершине р, существует возможная вершина(под возможной понимается вершина, ещё не принадлежащаяS), то переход к шагу 4 , если нет, то переход к шагу 7.

4. В столбце, соответствующем вершине р, выбирается первая возможная вершина k;х эта вершина присоединяется к множеству S и р = хk.

5.Если мощность множества S равна |S| = n, то найдена гамильтонова цепь, переход к шагу 6, а если |S| < n, то переход к шагу 3.

6.Если существует дуга или ребро(р, х1), то найден гамильтонов цикл. Если надо найти все гамильтоновы циклы, то переход к шагу 7; иначе останов алгоритма.

51

7. Возвращение. Из множества S удаляется последняя включённая вершина rх. Если при этом S = 0 (множество S пустое), то следует остановка алгоритма, т е. все цепи и циклы найдены (или нет). Если S ≠ 0, то р = хr-1, где (r-1) - номер вершины, включенной в гамильтонов цикл.

8. Если в столбце р существуют возможные вершины, т. е. вершины, следующие за хr, то переход к шагу 4. В противном случае хr = хr-1 и переход к шагу 7.

Пример. Построить гамильтоновы цепи и цикла для графа

Peшeние.

Матрица М приводится ниже, вершины в каждом столбце расположены в алфавитном порядке:

Поиск

всех

гамильтоновых

циклов

производится

следующим образом (вершина а выбирается в качестве начальной

вершины).

 

 

 

 

Множество S

 

Комментарии

 

 

1. а

 

Добавляем первую возможную

 

 

 

вершину в столбце а (т. е.

 

52

 

 

вершину b).

2.

а, b

Добавляем первую возможную

 

 

вершину в столбце b

 

 

(т. е. вершину с).

3.

а, b, с

Первая вершина (а) в столбце с

 

 

не является возможной (a S),

 

 

добавляем следующую вершину

 

 

в столбце (т. е. вершину d).

4.

a, b, с, d

Добавляем вершину f.

5.

a, b, с, d, f

В столбце f нет возможной вершины.

 

 

Возвращение.

6.

а, b. с, d

В столбце d не существует возможной

 

 

вершины, следующей за f.

 

 

Возвращение.

7.

а, b, с

Аналогично предыдущему.

 

 

Возвращение.

8.

а, b

Добавляем вершину е.

9.

а, b, е

Добавляем вершину с.

10.

а, b, е, с

Добавляем вершину d.

11.

а, b, е, с, d

Добавляем вершину f.

12.

а. b, е, с, d, f

Гамильтонов цикл, замыкающийся

 

 

дугой (f, а). Возвращение.

13.

a, b, e, c,d

Возвращение.

14.

a, b, e, с

Возвращение.

15.

a, b, e

Добавляем вершину d.

16.

a, b, e, d

Добавляем вершину f.

17.

a, b, e, d, f

Добавляем вершину. с

18.

a. b. e. d. f. с

Гамильтонов цикл, замыкающийся

 

 

дугой (с, а). Возвращение.

19.

a, b, е, d, f

Возвращение.

20.

a, b, е, d

Возвращение.

21.

а, b, е

Возвращение.

22.

а, b

Возвращение.

23.

а

Возвращение.

24.

0

Конец поиска.

53

Задания

1. Построить кратчайший путь в графе по варианту.

54

2. Построить кратчайшее остовное дерево с помощью алгоритмов Краскала и Прима по вариантам.

55

3. Построить все гамильтоновы циклы и цепи графа с использованием алгоритма Робертса и Флореса по варианту.

56

57

Библиографический список

Балдин, К. В. Основы теории вероятностей и математической статистики : учебник / К. В. Балдин, В. Н. Башлыков, А. В. Рукосуев. - Электрон. дан. - Москва : ФЛИНТА,

2016.- URL: https://e.lanbook.com/book/84347 . -

Загл. с экрана.

- Текст: электронный.

 

Белоусов, А. И. Дискретная математика :

учебник / А. И.

Белоусов, С. Б. Ткачев; под ред. В. С. Зарубина, А. П. Крищенко. - 3-е изд., стереотип. - Москва : МГТУ, 2004. - 744 с. – Текст: непосредственный.

Бережной, В. В. Дискретная математика / В. В. Бережной, А. В. Шапошников – Ставрополь : СКФУ, 2016. – 199 с. : ил. –

Режим

доступа:

по

подписке.

URL:

http://biblioclub.ru/index.php?page=book&id=466802.

Текст:

электронный.

 

 

 

 

 

Васильева, А. В. Дискретная математика / А. В. Васильева, И. В. Шевелева – Красноярск: СФУ, 2016. – 128 с. – Режим

доступа:

по

подписке.

URL:

http://biblioclub.ru/index.php?page=book&id=497748. –

Текст:

электронный.

 

 

 

 

Гмурман,

В. Е. Руководство

к решению

задач

по теории

вероятностей и математической статистике : учеб. пособие / В. Е. Гмурман. - 11-е изд., перераб. - Москва : Юрайт, 2010. - 404 с.

– Текст: непосредственный.

Новиков, Ф. А. Дискретная математика для программистов : учеб. пособие / Ф. А. Новиков. - 2-е изд. – Санкт-Петербург : ПИТЕР, 2006. - 364 с. - Текст: непосредственный.

Кузнецов, О.П. Дискретная математика для инженеров: учебник. — 5-е изд., стереотип. — Санкт-Петербург : Лань, 2007.— 400 с. - Текст: непосредственный.

Сидняев, Н. И. Теория планирования эксперимента и анализ статистических данных : учеб. пособие / Н. И. Сидняев. - 2-е изд., перераб. и доп. - Москва : Юрайт, 2015. - 495 с. – Текст: непосредственный.

58

 

 

Оглавление

 

 

 

 

Практическая

работа

№1.

Основные

понятия

теории

множеств .........................................................................................

 

 

 

 

 

 

 

 

3

Практическая

работа

№2.

Отображения и

 

функции.

Свойства

отображений.

Нечеткие

множества,

функция

 

принадлежности. Операции над нечеткими множествами ............

8

Практическая работа № 3. Бинарные отношения ........................

 

 

12

Практическая работа №4. Построение таблиц истинности

 

формулы,

тождественная

истинность,

тождественная

 

ложность .......................................................................................

 

 

 

 

 

 

 

 

17

Практическая работа №5. Упрощение формул,

релейно-

 

контактные схемы функций .........................................................

 

 

 

 

 

21

Практическая работа № 6.

Минимизации булевой функции.

 

Алгебра Жегалкина. Линейные функции .....................................

 

 

 

27

Практическая работа № 7. Способы задания графов: матрица

 

инциденций,

 

матрица смежности,

таблица

ребер,

список

 

инцидентности ..............................................................................

 

 

 

 

 

 

36

Практическая

работа

№8.

Представление

графа

и

определение его характеристик. Алгоритмы поиска ...................

 

 

40

Практическая работа №9. Кратчайший путь в орграфе.

Построение кратчайшего остовного дерева, Гамильтонова

 

цикла .............................................................................................

 

 

 

 

 

 

 

 

46

Библиографический список...........................................................

 

 

 

 

 

58

59

Учебное издание

Черняева Светлана Николаевна Коробова Людмила Анатольевна Толстова Ирина Сергеевна

ДИСКРЕТНАЯ МАТЕМАТИКА В ПРОГРАММИРОВАНИИ

Подписано в печать 03.02.2023 . Формат 6084 1/16.

Усл. печ. л. 3,5 Тираж 50 экз. Заказ

С – 04.

ФГБОУ ВО «Воронежский государственный университет инженерных технологий» (ФГБОУ ВО «ВГУИТ»)

Отдел полиграфии ФГБОУ ВО «ВГУИТ» Адрес университета и отдела полиграфии:

394036, Воронеж, пр. Революции, 19

60

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