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

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

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

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

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

 

 

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

Стратегия поиска в ширину состоит в том, что когда мы приходим в очередную вершину, то просматриваем всех ее соседей, которые не посещались ранее

Для реализации этой стратегии используется очередь Front

Расин О.В.

Поиск в графе

 

 

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

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

 

 

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

Стратегия поиска в ширину состоит в том, что когда мы приходим в очередную вершину, то просматриваем всех ее соседей, которые не посещались ранее

Для реализации этой стратегии используется очередь Front

Алгоритм можно представить в виде следующей последовательности действий

Расин О.В.

Поиск в графе

 

 

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

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

 

 

Поиск в ширину (формулировка алгоритма)

0. (инициализация) Для каждой вершины v 2V присваиваем

Visit[v] := 0,

Расин О.В.

Поиск в графе

 

 

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

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

 

 

Поиск в ширину (формулировка алгоритма)

0. (инициализация) Для каждой вершины v 2V присваиваем

Visit[v] := 0, Father[v] := 0

Расин О.В.

Поиск в графе

 

 

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

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

 

 

Поиск в ширину (формулировка алгоритма)

0. (инициализация) Для каждой вершины v 2V присваиваем

Visit[v] := 0, Father[v] := 0num[v] := 0;

Расин О.В.

Поиск в графе

 

 

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

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

 

 

Поиск в ширину (формулировка алгоритма)

0. (инициализация) Для каждой вершины v 2V присваиваем

Visit[v] := 0, Father[v] := 0num[v] := 0; counterNum := 1

Расин О.В.

Поиск в графе

 

 

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

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

 

 

Поиск в ширину (формулировка алгоритма)

0.(инициализация) Для каждой вершины v 2V присваиваем

Visit[v] := 0, Father[v] := 0num[v] := 0; counterNum := 1

1.Если есть непросмотренные вершины, т. е. существует v 2V , что Visit[v] = 0,

Расин О.В.

Поиск в графе

 

 

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

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

 

 

Поиск в ширину (формулировка алгоритма)

0.(инициализация) Для каждой вершины v 2V присваиваем

Visit[v] := 0, Father[v] := 0num[v] := 0; counterNum := 1

1.Если есть непросмотренные вершины, т. е. существует v 2V , что Visit[v] = 0,

берем такую вершину v, добавляем в конец очереди (Front:AddTail(v));

Расин О.В.

Поиск в графе

 

 

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

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

 

 

Поиск в ширину (формулировка алгоритма)

0.(инициализация) Для каждой вершины v 2V присваиваем

Visit[v] := 0, Father[v] := 0num[v] := 0; counterNum := 1

1.Если есть непросмотренные вершины, т. е. существует v 2V , что Visit[v] = 0,

берем такую вершину v, добавляем в конец очереди (Front:AddTail(v)); Visit[v] := 1,

Расин О.В.

Поиск в графе

 

 

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

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

 

 

Поиск в ширину (формулировка алгоритма)

0.(инициализация) Для каждой вершины v 2V присваиваем

Visit[v] := 0, Father[v] := 0num[v] := 0; counterNum := 1

1.Если есть непросмотренные вершины, т. е. существует v 2V , что Visit[v] = 0,

берем такую вершину v, добавляем в конец очереди (Front:AddTail(v)); Visit[v] := 1, num[v] := 1,

Расин О.В.

Поиск в графе