23
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ Національний університет водного господарства та природокористування Кафедра комп'ютерних наук 04-05-04 Методичні вказівки до виконання самостійних робіт з дисципліни “Додаткові розділи дискретної математики. Теорія графів” для студентів спеціальності “ Комп’ютерні науки та інформаційні технології” спеціалізації “Комп’ютерний еколого-економічний моніторинг” Рекомендовано науково-методичною комісією зі спеціальності 122 “Комп’ютерні науки та інформаційні технології” Протокол № 2 від 25.11.2016 р. Рівне-2017

04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ Національний університет водного господарства

та природокористування Кафедра комп'ютерних наук

04-05-04

Методичні вказівки

до виконання самостійних робіт з дисципліни

“Додаткові розділи дискретної

математики. Теорія графів”

для студентів спеціальності “ Комп’ютерні науки та інформаційні технології”

спеціалізації “Комп’ютерний еколого-економічний моніторинг”

Рекомендовано

науково-методичною комісією

зі спеціальності

122 “Комп’ютерні науки

та інформаційні технології”

Протокол № 2 від 25.11.2016 р.

Рівне-2017

Page 2: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

Методичні вказівки до виконання самостійних робіт з дисципліни “Додаткові розділи дискретної математики. Теорія графів” для студентів спеціальності “Комп’ютерні науки та інформаційні технології” спеціалізації “Комп’ютерний еколого-економічний моніторинг” / О.М. Гладка, І.М. Карпович, Л.В. Зубик – Рівне: НУВГП, 2017. – 23 с.

Укладачі: О.М. Гладка, канд. техн. наук, доцент кафедри комп’ютерних наук; І.М. Карпович, канд. фіз.-мат. наук, доцент кафедри комп’ютерних наук; Л.В. Зубик, канд. пед. наук, ст. викл. кафедри комп’ютерних наук.

Відповідальний за випуск: Ю.Й. Тулашвілі, доктор пед. наук, професор, завідувач кафедри комп’ютерних наук.

ЗМІСТ

ЗАГАЛЬНІ РЕКОМЕНДАЦІЇ ДО ВИКОНАННЯ САМОСТІЙНОЇ РОБОТИ .................................................................... 3 Тема 1. Представлення графів ...................................................... 4 Тема 2. Характеристики графів ..................................................... 5 Тема 3. Операції над матрицями графів .................................... 6 Тема 4. Обхід графів .......................................................................... 7 Тема 5. Топологічне сортування ................................................... 8 Тема 6. Компоненти зв'язності ...................................................... 8 Тема 7. Алгоритм Дейкстри ............................................................. 9 Тема 8. Алгоритм Белмана-Форда ............................................. 10 Тема 9. Найкоротші відстані ......................................................... 11 Тема 10. Ейлерові цикли ................................................................ 12 Тема 11. Гамільтонові цикли ........................................................ 13 Тема 12. Розфарбовування графів ............................................ 14 Тема 13. Кістякові дерева .............................................................. 15 Тема 14. Мережі та потоки ............................................................. 15 ДОДАТКИ ................................................................................. 17 СПИСОК ЛІТЕРАТУРНИХ ДЖЕРЕЛ ............................................. 23

Page 3: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

3

ЗАГАЛЬНІ РЕКОМЕНДАЦІЇ ДО ВИКОНАННЯ САМОСТІЙНОЇ РОБОТИ

З огляду на те, що дисципліну вивчають студенти спеціальності “Комп’ютерні науки та інформаційні технології”, завдання для самостійної роботи подано у формі комп’ютерних практикумів. Але, на відміну від лабораторних і самостійних робіт з програмування, стиль та мова програмування не є важливими. Студенти можуть обирати ту мову програмування, яку вважають необхідною. Важливою є, насамперед, реалізація математичних складових завдання (алгоритм, структури даних тощо).

Всі завдання, певною мірою, пов'язані між собою і присвячені одному розділу – теорії графів, тому наполегливо рекомендуємо кожному студентові протягом самостійної роботи в семестрі створити єдиний проект, до якого для кожної наступної теми слід додавати нові програмні функції. Це, з одного боку, зменшить обсяг загальної роботи, а з іншого – дозволить студентам потренуватися у підтримці програмних проектів.

У додатках (с. 17–22) наведено приклади графів, які можна використати для тестування розроблених програм.

Page 4: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

4

Тема 1. Представлення графів Мета. Розглянути і засвоїти різні типи представлення графів у пам’яті комп’ютерів.

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує

наступні функції. 1. Зчитування графу із вхідного файлу. На вхід

подається текстовий файл наступного вигляду: n m v1 u1 v2 u2 .... vm um

Тут n – кількість вершин графу (ціле число, більше нуля), m – кількість ребер графу (ціле число, більше нуля), vi та ui – початкова та кінцева вершина ребра i (1<vi<n, 1<ui<n, цілі числа). Індексація вершин у файлі ведеться з 1. Вважається, що граф є орієнтованим. Таким чином, граф задається у файлі списком ребер.

2. Виведення матриць інцидентності та суміжності. За вимогою користувача програма повинна виводити матриці інцидентності та суміжності (окремі функції) на екран та/або у текстовий файл, який вказує користувач.

Контрольні запитання

1. Які існують способи задання графів? 2. В чому полягають недоліки та переваги існуючих способів

задання графів? 3. Який спосіб задання графів є найбільш раціональним з

точки зору програмування (потребує для зберігання най-менше комп'ютерної пам'яті)?

Page 5: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

5

Тема 2. Характеристики графів

Мета. Дослідити характеристики графів та навчитись визначати їх на конкретних прикладах.

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує наступні функції.

1. Визначити степінь вершин графу. За запитом користувача програма на екран та/або у файл виводить степінь усіх вершин графу (напівстепені виходу та входу). Визначити, чи граф є однорідним та, якщо так, знайти степінь однорідності графу.

2. Визначити всі висячі та ізольовані вершини. За запитом користувача програма на екран виводить перелік усіх висячих та ізольованих вершин графу.

3. Визначити метричні характеристики графу. Програма має вивести наступні характеристики:

a. Діаметр графу b. Радіус графу c. Центр графу d. Яруси графу із переліком вершин, які входять до кожного ярусу

Контрольні запитання

1. Що таке степінь вершини, напівстепені входу та виходу? 2. Які вершини називаються ізольованими, висячими? 3. Що таке однорідні графи? 4. Які є метричні характеристики графів? Як вони визначають-

ся?

Page 6: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

6

Тема 3. Операції над матрицями графів

Мета. Дослідити властивості операцій над матрицями графів та їх використання щодо визначення типів зв’язності.

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує наступні функції. На вхід програми подається файл з описом графу зі структурою, яка вказана у Темі 1 «Представлення графів».

1. Визначити матриці відстаней та досяжності графу. Програма за запитом користувача має вивести на екран та/або у файл матрицю відстаней D та матрицю досяжності R графу.

2. Визначити наявність простих циклів у графі. Програма визначає, чи наявні у графі прості цикли та, в разі позитивної відповіді, виводить деякі цикли на екран.

3. Визначити тип зв’язності графу. Програма виводить на екран тип зв’язності графу.

Контрольні запитання

1. Що таке матриці суміжності, відстаней та досяжності графу? Як вони визначаються?

2. Що таке маршрут у графі, цикл, простий цикл? 3. Що таке зв’язність графу? Що таке компоненти зв’язності?

Які типи зв’язності існують для орієнтованих графів? 4. Як за допомогою матриць можна визначити тип зв’язності

графу?

Page 7: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

7

Тема 4. Обхід графів

Мета. Дослідити роботу алгоритмів обходу в графах: пошуку вшир та пошуку вглиб.

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує наступні функції. На вхід програми подається файл з описом графу зі структурою, яка вказана у Темі 1 «Представлення графів». При реалізації алгоритмів вважати, що заданий граф є зв’язним.

1. Обійти граф пошуком вшир. Користувач вводить початкову вершину графу. Програма виконує обхід графу, починаючи із вказаної початкової вершини. На екран виводиться протокол обходу – таблиця, яка містить наступні дані з кожної ітерації алгоритму обходу: поточна вершина, її BFS-номер, вміст черги.

2. Обійти граф пошуком углиб. Аналогічно до пункту 1 завдання, але програма виконує обхід графу пошуком углиб. На екран виводиться протокол обходу: поточна вершина, її DFS-номер, вміст стеку.

Контрольні запитання

1. Як працюють алгоритми обходу графу методом вшир та вглиб?

2. Які властивості мають алгоритми пошуку вшир та вглиб? 3. Яка часова складність цих двох алгоритмів? 4. Який із зазначених алгоритмів знаходить найкоротшу

відстань від початкової вершини до будь-якої іншої вершини графу? Поясніть чому.

Page 8: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

8

Тема 5. Топологічне сортування

Мета. Дослідити задачу топологічного сортування в орієнтованому графі.

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує наступні функції.

Знайти топологічне сортування в графі. За допомогою методу пошуку вглиб знайти топологічне сортування в орієнтованому ациклічному графі. Вивести на екран порядок вершин у топологічному сортуванні.

На вхід програми подається файл з описом графу зі структурою, яка вказана у Темі 1 «Представлення графів». При реалізації програми вважати, що заданий граф є орієнтованим та ациклічним.

Контрольні запитання

1. Що таке топологічне сортування? 2. Чи може топологічне сортування існувати в орієнтованому

графі, який містить цикли? Поясніть чому. 3. Чи може топологічне сортування існувати у неорієнтовано-

му графі? Поясніть чому.

Тема 6. Компоненти зв'язності

Мета. Дослідити задачу знаходження компонент зв'язності в неорієнтованому графі.

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує наступні функції.

Page 9: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

9

Знайти і порахувати всі компоненти зв'язності графа за допомогою методу пошуку вшир. Програма має виводити на екран кількість знайдених компонент зв'язності, а також (за бажанням студента) самі ці компоненти, наприклад, у вигляді множин.

На вхід програми подається файл з описом графу зі структурою, яка вказана у Темі 1 «Представлення графів».

Контрольні запитання

1. Що таке компонента зв'язності графа? 2. Чи можна для підрахунку кількості компонент зв'язності

використовувати алгоритм пошуку вглиб? Поясніть чому. 3. Чи можна використовувати розроблений алгоритм для

орієнтованого графа?

Тема 7. Алгоритм Дейкстри

Мета. Дослідити задачу пошуку найкоротших шляхів у графі за допомогою алгоритму Дейкстри.

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує наступні функції.

1. Зчитування графу із вхідного файлу. На вхід подається текстовий файл наступного вигляду:

n m v1 u1 w1 v2 u2 w2 ....... vm um wm

Тут n – кількість вершин графу (ціле число, більше нуля), m – кількість ребер графу (ціле число, більше нуля), vi та ui –

Page 10: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

10

початкова та кінцева вершина ребра i (1<vi<n, 1<ui<n, цілі числа), wi – вага ребра (vi, ui). Індексація вершин у файлі ведеться з 1. Вважається, що граф є орієнтованим.

2. Визначити найкоротший маршрут між двома вершинами та його довжину. За допомогою алгоритму Дейкстри визначити найкоротшу відстань між двома заданими вершинами (які вводяться користувачем), а також вивести сам знайдений найкоротший маршрут. Програма повинна коректно опрацьовувати факт наявності у графі ребер з від’ємною вагою.

3. Визначити найкоротшу відстань від заданої вершини до всіх інших вершин. За допомогою алгоритму Дейкстри визначити найкоротшу відстань від заданої вершини (вводиться користувачем) до всіх інших вершин графу. Програма має вивести на екран список вершин із відповідними значеннями найкоротших відстаней.

Контрольні запитання

1. Що таке зважений граф? 2. Як працює алгоритм Дейкстри? 3. Які обмеження існують щодо застосування алгоритму

Дейкстри? 4. Яка швидкість роботи (витрати часу) алгоритму?

Тема 8. Алгоритм Белмана-Форда

Мета. Дослідити задачу пошуку найкоротших шляхів у графі за допомогою алгоритму Белмана-Форда.

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує наступні функції. На вхід програми подається файл з описом

Page 11: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

11

графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При реалізації програми вважати, що заданий граф є орієнтованим.

1. Визначити найкоротший маршрут між двома вершинами та його довжину. За допомогою алгоритму Белмана-Форда визначити найкоротшу відстань між двома заданими вершинами (які вводяться користувачем), а також вивести знайдений найкоротший маршрут. Програма повинна коректно опрацьовувати факт наявності в графі циклу з від’ємною вагою.

2. Визначити найкоротшу відстань від заданої вершини до всіх інших вершин. За допомогою алгоритму Белмана-Форда визначити найкоротшу відстань від заданої вершини (вводиться користувачем) до всіх інших вершин графу. Програма має виводити на екран список вершин із відповідними значеннями найкоротших відстаней.

Контрольні запитання

1. Як працює алгоритм Белмана-Форда? 2. Які обмеження існують щодо застосування алгоритму

Белмана-Форда? 3. Яка швидкість роботи (витрати часу) алгоритму Белмана-

Форда?

Тема 9. Найкоротші відстані

Мета. Дослідити задачу пошуку найкоротших шляхів у графі між усіма парами вершин.

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує наступні функції. На вхід програми подається файл з описом

Page 12: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

12

графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». Вважати, що заданий граф є орієнтованим.

1. Визначити найкоротші відстані між усіма парами вершин в графі за допомогою алгоритму Флойда-Уоршела. За допомогою алгоритму Флойда-Уоршола визначити найкоротшу відстань між усіма парами вершин. Програма повинна виводити на екран або у файл знайдену матрицю відстаней. За запитом користувача програма має виводити знайдений найкоротший маршрут для початкової та кінцевої вершини (вводяться користувачем). Програма повинна коректно опрацьовувати факт наявності в графі циклів з від’ємною вагою.

2. Визначити найкоротші відстані між усіма парами вершин у графі за допомогою алгоритму Джонсона. Завдання виконується аналогічно до пункту 1, але використовується алгоритм Джонсона.

Контрольні запитання

1. Як працює алгоритм Флойда-Уоршела? Яка його часова складність?

2. Як працює алгоритм Джонсона? Яка його часова складність?

3. У яких випадках краще використовувати той чи інший алгоритми?

Тема 10. Ейлерові цикли

Мета. Дослідити задачу пошуку ейлеревих циклів у графі.

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує наступні функції. На вхід програми подається файл з описом

Page 13: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

13

графу зі структурою, яка вказана у Темі 1 «Представлення графів». При реалізації програми вважати, що заданий граф є неорієнтованим.

1. Знайти ейлерів цикл у графі. Програма має виводити на екран знайдений ейлерів цикл або повідомити про його відсутність у графі.

2. Знайти ейлерів маршрут у графі. У випадку, якщо ейлеревого циклу в графі не існує, то спробувати знайти ейлерів маршрут. Програма має виводити на екран знайдений ейлерів маршрут, якщо він є, або повідомити про його відсутність.

Контрольні запитання

1. Що називають ейлеровим циклом? 2. Які умови існування ейлеревого циклу в графі? 3. Що таке ейлерів маршрут? 4. Які умови існування ейлеревого маршруту в графі?

Тема 11. Гамільтонові цикли

Мета. Дослідити задачу пошуку гамільтонових циклів у графі.

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує наступні функції. На вхід програми подається файл з описом графу зі структурою, яка вказана у Темі 1 «Представлення графів». При реалізації вважати, що заданий граф є неорієнтованим.

1. Знайти гамільтонів цикл в графі. Програма повинна вивести на екран знайдений гамільтонів цикл або повідомити про його відсутність у графі.

Page 14: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

14

2. Знайти гамільтонів маршрут у графі. У випадку, якщо гамільтонового циклу в графі не існує, спробувати знайти гамільтонів маршрут. Програма має вивести на екран знайдений гамільтонів маршрут, якщо він є, або повідомити про його відсутність.

Контрольні запитання

1. Що називають гамільтоновим циклом? 2. Що таке гамільтонів маршрут? 3. Які умови існування гамільтонового циклу в графі?

Тема 12. Розфарбовування графів

Мета. Дослідити задачу розфарбовування графів.

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує наступні функції. На вхід програми подається файл з описом графу зі структурою, яка вказана у Темі 1 «Представлення графів».

Розв’язати задачу розфарбовування графів. Програма має визначити мінімальну кількість кольорів, в які можна розфарбувати граф, та вивести на екран список вершин із відповідними призначеними кольорами.

Контрольні запитання

1. Як формулюється задача розфарбовування графу? 2. Які методи дозволяють знайти мінімальну кількість кольо-

рів для розфарбовування графу?

Page 15: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

15

Тема 13. Кістякові дерева

Мета. Дослідити задачу побудови мінімальних кістякових дерев.

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує наступні функції. На вхід програми подається файл з описом графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри» (вважається, що граф є неорієнтованим).

Побудувати мінімальне кістякове дерево. За допомогою алгоритму Прима або алгоритму Крускала (на вибір) розв’язати задачу знаходження мінімального кістякового дерева в неорієнтованому графі.

Контрольні запитання

1. Що називають кістяковим деревом? Що таке мінімальне кістякове дерево?

2. Які алгоритми можуть застосовуватись для побудови кістякових дерев?

3. Опишіть роботу алгоритму Прима. 4. Опишіть роботу алгоритму Крускала.

Тема 14. Мережі та потоки

Мета. Дослідити задачу визначення максимального потоку в мережі.

Page 16: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

16

Завдання для самостійної роботи

Реалізувати програмне застосування, яке виконує наступні функції.

1. Зчитування графу мережі із вхідного файлу. На вхід подається текстовий файл наступного вигляду:

n m v1 u1 w1 ....... vm um wm

Тут n – кількість вершин графу (ціле число, більше нуля), m – кількість ребер графу (ціле число, більше нуля), vi та ui – початкова та кінцева вершина ребра i (1<vi<n, 1<ui<n, цілі числа), wi – пропускна спроможність ребра (vi, ui) мережі. Індексація вершин у файлі ведеться з 1. Вважається, що граф мережі є орієнтованим.

2. Визначити максимальний потік в мережі. За допомогою алгоритму Форда-Фалкерсона знайти максималь-ний потік в мережі. Програма повинна виводити об’єм (розмір) потоку та кількість потоку через кожну ділянку мережі (ребро графу). Програма має самостійно визначати джерело та стік мережі на основі степенів вершин.

Контрольні запитання

1. Що таке мережа? Які вершини називаються джерелом та стоком?

2. Що таке потік? Який потік називається максимальним? 3. Що таке s-t-розріз? Який розріз називається мінімальним? 4. Яка умова максимального потоку в мережі? 5. Опишіть роботу алгоритму Форда-Фалкерсона.

Page 17: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

17

Додатки

До тем 1, 2, 4 До теми 3 10 21 1 5 5 1 1 10 10 1 2 2 4 5 5 4 4 7 7 4 4 8 8 4 8 10 10 8 2 5 5 2 2 3 3 2 3 6 6 3 6 9 9 6

10 34 1 3 3 1 1 4 4 1 2 3 3 2 2 8 8 2 2 10 10 2 3 3 3 6 6 3 3 7 7 3 3 9 9 3 4 5 5 4 4 6 6 4 4 9 9 4 5 6 6 5 5 7 7 5 7 8 8 7 7 9 9 7 8 8 9 10 10 9

20 39 1 18 18 1 7 8 8 7 7 10 10 7 10 19 19 10 10 20 20 10 11 13 13 11 13 15 15 13 20 20 2 18 18 2 2 3 3 2 3 4 4 3 4 5 5 4 5 6 6 5 6 7 7 6 9 20 20 9 9 15 15 9 11 12 12 11 12 14 14 12 14 16 16 14 16 17 17 16

10 22 1 8 1 10 2 6 2 8 2 9 3 5 4 5 5 1 5 7 6 9 7 2 7 8 7 10 8 3 8 4 8 6 9 9 10 1 10 2 10 3 10 5 9 2

20 36 1 2 1 6 1 10 2 8 3 6 4 5 4 7 4 20 7 9 8 7 8 20 9 13 9 15 10 2 10 16 11 4 11 6 11 8 11 18 14 1 14 3 14 6 14 7 14 11 14 19 14 20 15 19 16 10 16 15 16 17 17 12 18 14 18 20 19 10 20 6 20 14

20 27 1 9 2 4 2 18 4 17 5 1 5 2 5 5 6 5 6 9 6 11 6 12 6 18 7 5 8 1 10 10 11 7 11 12 11 17 12 13 12 19 13 12 14 11 14 17 15 7 15 12 17 4 17 7

Page 18: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

18

До теми 5

граф 1 граф 2 граф 3 граф 1 10 14 2 10 8 3 8 5 9 3 10 4 9 8 8 7 7 6 6 5 5 3 3 2 2 10 4 1

10 11 1 5 2 6 6 3 7 5 9 4 10 9 9 8 8 7 7 4 4 2 3 1

15 22 1 3 1 4 1 7 2 1 2 8 2 14 3 14 4 8 4 15 5 10 8 5 9 12 10 3 10 6 13 5 13 15 13 11 11 9 12 2 7 4 15 8 6 3

граф 3

граф 2

Page 19: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

19

До теми 6 граф 1 граф 2 граф 3 граф 1 10 19 2 7 3 5 5 2 5 7 6 10 7 3 8 1 8 5 8 8 9 2 9 8 9 6 4 2 9 10 9 4 9 1 6 1 1 6 7 9

10 22 2 8 3 9 4 2 4 10 6 3 7 1 7 8 8 1 8 3 8 6 9 1 10 3 10 4 10 10 7 5 5 7 8 2 3 6 1 9 5 4 4 5 6 8

20 33 1 19 3 3 4 11 5 1 6 4 6 6 8 17 9 17 10 10 11 16 13 5 14 13 16 3 16 14 17 16 17 18 18 13 19 6 19 14 19 15 20 12 12 20 10 9 9 10 17 8 18 7 7 18 2 15 15 2 3 12 20 3 10 17 17 10

граф 3

граф 2

Page 20: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

20

До тем 7, 8, 9 До теми 10 10 24 1 3 6 1 7 3 1 10 4 2 2 6 2 7 6 3 2 1 4 5 10 5 5 7 5 6 8 6 5 2 6 7 10 7 10 2 9 2 5 9 8 7 8 9 3 8 4 6 4 8 1 6 4 3 6 1 4 1 5 5 3 1 5 2 3 10 7 2 5 10 7 6

10 20 5 8 4 6 4 7 9 5 4 10 9 -1 9 10 2 9 7 8 7 9 5 7 6 7 6 7 -3 6 5 -4 5 6 5 8 5 3 8 4 8 4 8 9 4 3 5 3 4 3 3 2 -2 2 3 8 2 1 7 1 2 8

10 50 1 6 -5 1 7 6 1 10 -2 2 3 8 2 4 -5 2 5 6 2 8 8 3 2 12 3 5 10 3 7 14 4 1 15 4 2 9 4 5 -5 4 8 10 4 9 15 4 10 11 5 2 12 5 3 -1 5 6 18 5 7 17 5 8 13 6 2 10 6 3 3 6 4 4 6 7 4 6 8 -2 6 9 -1 6 10 5 7 1 10 7 2 -3 7 5 9 7 8 4 7 9 7 7 10 -1 8 2 -2 8 4 7 8 5 -2 8 6 6 8 7 1 8 9 8 8 10 4 9 4 -3 9 6 8 9 7 11 9 8 -2 9 10 -2 10 1 10 10 2 -2 10 3 9 10 5 -5

граф 1 граф 2 граф 3 10 16 1 4 1 6 1 7 1 10 2 7 2 9 3 5 3 9 4 7 4 9 4 10 5 7 5 8 5 9 6 7 7 8

10 13 1 3 1 10 2 4 2 6 3 5 3 6 4 7 4 10 5 8 5 9 6 8 4 6 3 7

10 12 1 3 1 8 2 4 2 6 2 7 3 6 3 8 4 6 4 10 5 6 2 9 9 10

граф 4 10 10 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 1

Page 21: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

21

До теми 10 (продовження) граф 1 граф 2

граф 4

граф 3

Page 22: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

22

До теми 11 + графи 3, 4 (до теми 10) граф 1 граф 2 граф 1

10 27 1 4 1 7 1 10 2 3 2 5 2 7 2 8 2 10 3 4 4 5 5 7 5 10 6 10 7 8 2 9 4 9 7 9 4 10 1 9 5 9 3 8 1 6 7 10 3 5 6 8 4 6 3 7

10 21 1 4 1 7 1 10 2 3 2 5 2 7 2 10 4 5 5 7 5 10 6 10 2 9 4 9 7 9 4 10 1 9 5 9 1 6 7 10 6 8 4 6

граф 2

Page 23: 04-05-04 - НУВГПep3.nuwm.edu.ua/5282/1/04-05-04.pdf · графу зі структурою, яка вказана у Темі 7 «Алгоритм Дейкстри». При

23

Список літературних джерел

1. Андрійчук В.І., Комарницький М.Я., Іщук Ю.Б. Вступ до дискретної математики: Навч. посібник. – Київ: ЦНЛ, 2004. – 254 с.

2. Асеев Г.Г., Абрамов О.М., Ситников Д.Э. Дискретная математика: Учебник. – Киев: Кондор, 2008.

3. Белецкий А.Я., Бабак В.П. Детерминированные сигналы и спектры: Учеб. пособие. – Киев: КИТ, 2002. – 502 с.

4. Бондаренко М.Ф., Білоус Н.В., Руткас А.Г. Комп'ютерна дискретна математика: Підручник. – Харків: Компанія СМІТ, 2004. – 480 с.

5. Бардачов Ю.М., Соколова Н.А., Ходаков В.Є. Дискретна математика: Підручник /За ред. В.Є.Ходакова. – 2-ге вид.,переробл. і доп. – Київ: Вища школа, 2007. – 382 с.

6. Капітонова Ю.В., Кривий С.Л., Летичевський О.А., Луцький Г.М., Печурін М.К. Основи дискретної математики: Підручник. – Київ: “ЛітСофт”, 2000.

7. Нікольський Ю.В., Пасічник В.В., Щербина Ю.М. Дискретна математика: Підручник. – 2-е вид., випр. та доп. – Львів: Магнолія плюс, 2007. – 608 с.

8. Новиков Ф.А. Дискретная математика для программистов: Учеб. пособ. – 3-е изд. – Москва, Санкт-Петербург: Питер, 2008. – 384 с.

9. Робертс Ф.С. Дискретные математические модели с приложениями к социальным, биологическим и экологическим задачам. – М.: Наука, 1986.

10. Таран Т.А. Основы дискретной математики. – К.: Просвіта, 2003.

11. Таран Т.А., Мыценко Н.А., Темникова Е.Л. Сборник задач по дискретной математике. – К.: Просвіта, 2001.

12. Харари Ф. Теория графов. – М.: Мир, 1973.