How it works?
Урок 3 из 9 курса Поиск в ширину — Алгоритмы на графах на Coddy.
BFS хранит маркер visited (посещено) для каждой вершины и queue (очередь) вершин для обработки.
Пошаговый процесс:
- Отметьте начальную вершину как посещенную и добавьте ее в очередь.
- Извлеките первую вершину из очереди и запишите ее в порядке обхода.
- Для каждого непосещенного соседа (в порядке возрастания) отметьте его как посещенного и добавьте в очередь. Отметка при добавлении в очередь предотвращает повторное добавление вершины.
- Повторяйте, пока очередь не станет пустой.
Пример на вершинах 0..3 с ребрами [0,1, 0,2, 1,3, 2,3], начиная с 0:
- Посетите 0, добавьте в очередь 1 и 2; посетите 1, добавьте в очередь 3; посетите 2; посетите 3.
- Порядок обхода: [0, 1, 2, 3] (сравните с DFS: [0, 1, 3, 2]).
Попробуйте сами
В этом уроке нет задания по программированию.
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Поиск в ширину — Алгоритмы на графах
2The Algorithm
How it works?Pseudo CodeImplementation (Part 1)Implementation (Part 2)