Раздел 2 Использование комбинаторных алгоритмов и

Алгоритмов на графах для решения задач

Тема 2.1 Использование алгоритмов генерирования

Перестановок, множества всех подмножеств

Множества, к-элементных подмножеств множества,

Разбиения множества на подмножества для решения

Задач

Использование алгоритмов генерирования перестановок, множества всех подмножеств множества, к-элементных подмножеств множест­ва, разбиения множества на подмножества для решения задач

Литература: [5, с. 5-70]; [7, с. 25-65]

Тема 2.2 Задачи, основанные на поиске в ширину и в глубину

В графе

Понятие графа. Основные свойства графов

Способы представления графов в памяти ЭВМ

Поиск в глубину. Поиск в ширину

Литература: [3, с. 436-453]

Тема 2.3 Алгоритмы поиска кратчайших расстояний в графе

Алгоритм поиска кратчайшего пути между парой вершин

Алгоритм поиска кратчайших путей между всеми парами вершин

Литература: [3, с. 479-523]

Тема 2.4 Алгоритмы нахождения максимального потока и

Потока минимальной стоимости

Понятие максимального потока

Алгоритм нахождения максимального потока Форда-Фанкерсона

Алгоритм нахождения потока минимальной стоимости

Литература: [3, с. 535-552]

Тема 2.5 Задачи, решаемые полным перебором. Методы

Сокращения полного перебора

Общая схема полного перебора. Дерево поиска

Задачи, решаемые полным перебором: задача о коммивояжере, задача о шахматном коне, задача о лабиринте

Методы сокращения полного перебора

Литература: [9, с. 211-228]; [7, с. 79-96]

Тема 2.6 Алгоритмы с возвращением, их реализация

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

Задача о расстановке ферзей на шахматной доске

Литература: [4, с. 221-231]

Тема 2.7 Динамическое программирование, задачи решаемые

Методом динамического программирования

Понятие реккурентного соотношения

Технологии динамического программирования: восходящее динамическое программирование, нисходящее динамическое программирование

Задачи решаемые методом динамического программирования: задача о ранце, числа Фибоначчи, наибольшая общая последовательность

Литература: [3, с. 287-312]; [7, с. 96-105]

Тема 2.8 Метод ветвей и границ

Вычислительная схема метода ветвей и границ

Литература: [9, с. 228-231]; [7, с. 105-109]

Тема 2.9 Жадные алгоритмы

Принцип жадного выбора

Коды Хоффмана. Задача о расписании

Жадный алгоритм поиска кратчайшего пути между двумя вершинами графа

Жадный алгоритм в задаче о сумме элементов подмножества

Литература: [3, с. 313-336]; [6, с. 250-259]

Вопросы для самоконтроля

1 По каким правилам создаются всевозможные комбинации предметов определенного типа из набора данных?

2 В каких случаях возможно сформировать перестановки с повторениями?

3 В чем проявляется рекурсивность метода перебора с возвратом?

4 Почему полный метод перебора с возвратом гарантирует отыскание всех решений задачи?

5 Как формируется рекурсивная база метода возвратной рекурсии?

6 Дайте определение графа и его основным компонентам.

7 Дайте определение матрице смежности. Как формируется матрица? Примеры

8 Дайте определение матрице инцидентности. Как формируется матрица? Примеры.

9 Дайте определение матрице расстояний. Как формируется матрица? Примеры

10 С какими видами графов работают алгоритмы Дейкстры, Флойда и переборные алгоритмы?

11 Как от представления графа зависит эффективность алгоритма его обхода?

12 За счет чего поиск в ширину является достаточно ресурсоемким алгоритмом?

13 В чем преимущества алгоритмов обхода графа в ширину?

14 Каким образом в алгоритме перебора с возвратом при обходе графа обрабатывается посещение тупиковых вершин?


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: