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

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

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

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

Поиск в ширину

 

 

Некоторые простые модификации поиска в ширину

Иногда в приложениях требуется выделить все поперечные ребра, чтобы это сделать нужно

в п. 3 не игнорировать уже посещенную вершину u, а 1)проверить : не является ли она отцом вершины v (которая извлечена из очереди) в дереве поиска

Расин О.В.

Поиск в графе

 

 

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

Поиск в ширину

 

 

Некоторые простые модификации поиска в ширину

Иногда в приложениях требуется выделить все поперечные ребра, чтобы это сделать нужно

в п. 3 не игнорировать уже посещенную вершину u, а 1)проверить : не является ли она отцом вершины v (которая извлечена из очереди) в дереве поиска

2) чтобы не включить ребро в список дважды, то использовать массив num

Расин О.В.

Поиск в графе

 

 

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

Поиск в ширину

 

 

Некоторые простые модификации поиска в ширину

Иногда в приложениях требуется выделить все поперечные ребра, чтобы это сделать нужно

в п. 3 не игнорировать уже посещенную вершину u, а 1)проверить : не является ли она отцом вершины v (которая извлечена из очереди) в дереве поиска

2) чтобы не включить ребро в список дважды, то использовать массив num

например, договориться, что включаем если num[u] < num[v]

Расин О.В.

Поиск в графе

 

 

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

Поиск в ширину

 

 

Некоторые простые модификации поиска в ширину

Иногда в приложениях требуется выделить все поперечные ребра, чтобы это сделать нужно

в п. 3 не игнорировать уже посещенную вершину u, а 1)проверить : не является ли она отцом вершины v (которая извлечена из очереди) в дереве поиска

2) чтобы не включить ребро в список дважды, то использовать массив num

например, договориться, что включаем если num[u] < num[v]

(очевидно, когда ребро будет обнаружено вторично, то соотношение между номерами будет противоположно)

Расин О.В.

Поиск в графе

 

 

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

Поиск в ширину

 

 

Модификации поиска в ширину на случай несвязного графа

Мы сформулировали алгоритм в предположении, что граф связен

Расин О.В.

Поиск в графе

 

 

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

Поиск в ширину

 

 

Модификации поиска в ширину на случай несвязного графа

Мы сформулировали алгоритм в предположении, что граф связен (это было сделано для упрощения обозначений )

Расин О.В.

Поиск в графе

 

 

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

Поиск в ширину

 

 

Модификации поиска в ширину на случай несвязного графа

Мы сформулировали алгоритм в предположении, что граф связен (это было сделано для упрощения обозначений ) Однако его нетрудно модифицировать для случая несвязного графа

Расин О.В.

Поиск в графе

 

 

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

Поиск в ширину

 

 

Модификации поиска в ширину на случай несвязного графа

Мы сформулировали алгоритм в предположении, что граф связен (это было сделано для упрощения обозначений ) Однако его нетрудно модифицировать для случая несвязного графа

После того, как очередь Front стала пустой проверить: не осталось ли вершин графа v, которые еще не посещены

Расин О.В.

Поиск в графе

 

 

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

Поиск в ширину

 

 

Модификации поиска в ширину на случай несвязного графа

Мы сформулировали алгоритм в предположении, что граф связен (это было сделано для упрощения обозначений ) Однако его нетрудно модифицировать для случая несвязного графа

После того, как очередь Front стала пустой проверить: не осталось ли вершин графа v, которые еще не посещены если таковые есть, то запустить алгоритм из такой вершины

Расин О.В.

Поиск в графе

 

 

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

Поиск в ширину

 

 

Модификация поиска в ширину

Теорема 1.2

Алгоритм поиска в ширину позволяет установить является ли граф G = (V;E) связным.

Расин О.В.

Поиск в графе