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

Поиск в графе 2

.pdf
Скачиваний:
19
Добавлен:
03.05.2015
Размер:
1.34 Mб
Скачать

Задача поиска в графе

Поиск в глубину

 

 

Древесные и обратные ребра поиска

Из примера и описания алгоритма видно, что в результате работы алгоритма поиска в глубину получаем дерево, которое называется деревом поиска в глубину

Ребра графа, вошедшие в дерево поиска называются древесными, остальные обратными

По сути массив Father используется для того, чтобы сохранить дерево поиска в глубину

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

Расин О.В.

Поиск в графе

 

 

Задача поиска в графе

Поиск в глубину

 

 

Древесные и обратные ребра поиска

Из примера и описания алгоритма видно, что в результате работы алгоритма поиска в глубину получаем дерево, которое называется деревом поиска в глубину

Ребра графа, вошедшие в дерево поиска называются древесными, остальные обратными

По сути массив Father используется для того, чтобы сохранить дерево поиска в глубину

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

Расин О.В.

Поиск в графе

 

 

Задача поиска в графе

Поиск в глубину

 

 

Древесные и обратные ребра поиска

Из примера и описания алгоритма видно, что в результате работы алгоритма поиска в глубину получаем дерево, которое называется деревом поиска в глубину

Ребра графа, вошедшие в дерево поиска называются древесными, остальные обратными

По сути массив Father используется для того, чтобы сохранить дерево поиска в глубину

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

Расин О.В.

Поиск в графе

 

 

Задача поиска в графе

Поиск в глубину

 

 

Временная сложность поиска в глубину

Лемма 1.1

Алгоритм поиска в глубину просматривает каждую запись списка смежности однократно

Расин О.В.

Поиск в графе

 

 

Задача поиска в графе

Поиск в глубину

 

 

Временная сложность поиска в глубину

Лемма 1.1

Алгоритм поиска в глубину просматривает каждую запись списка смежности однократно

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

Расин О.В.

Поиск в графе

 

 

Задача поиска в графе

Поиск в глубину

 

 

Временная сложность поиска в глубину

Лемма 1.1

Алгоритм поиска в глубину просматривает каждую запись списка смежности однократно

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

или игнорируем ее (если вершина уже была посещена ранее, из другой вершины)

Расин О.В.

Поиск в графе

 

 

Задача поиска в графе

Поиск в глубину

 

 

Временная сложность поиска в глубину

Лемма 1.1

Алгоритм поиска в глубину просматривает каждую запись списка смежности однократно

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

или игнорируем ее (если вершина уже была посещена ранее, из другой вершины)

Расин О.В.

Поиск в графе

 

 

Задача поиска в графе

Поиск в глубину

 

 

Временная сложность поиска в глубину

Теорема 1.1

Пусть G = (V; E) связный (n; m)-граф. Тогда алгоритм поиска в глубину требует O(n + m) операций.

Расин О.В.

Поиск в графе

 

 

Задача поиска в графе

Поиск в глубину

 

 

Временная сложность поиска в глубину

Теорема 1.1

Пусть G = (V; E) связный (n; m)-граф. Тогда алгоритм поиска в глубину требует O(n + m) операций.

Д о к а з а т е л ь с т в о. Поскольку список смежности содержит 2m записей, то его чтение требует 2m операций.

Расин О.В.

Поиск в графе

 

 

Задача поиска в графе

Поиск в глубину

 

 

Временная сложность поиска в глубину

Теорема 1.1

Пусть G = (V; E) связный (n; m)-граф. Тогда алгоритм поиска в глубину требует O(n + m) операций.

Д о к а з а т е л ь с т в о. Поскольку список смежности содержит 2m записей, то его чтение требует 2m операций.

Конечно нужно учитывать еще манипуляции, связанные с вставкой/извлечением вершины из стека,

Расин О.В.

Поиск в графе