Задание № 4687

Студент

Бунтина Ирина

Задача

Обход графа

Состояние

Завершено

Баллов

3

Назначено

13.11.2022, 11:56

Завершено

28.12.2022, 03:51

Реализовать два алгоритма обхода графа (DFS — поиск в глубину и BFS — поиск в ширину), используя паттерн проектирования «Шаблонный метод».

Для переопределения должны быть доступны следующие методы:

  • Начало обхода.
  • Конец обхода.
  • Посещение узла V.
  • Посещение ребра E.

Оба алгоритма должны иметь унифицированный интерфейс (реализуя, таким образом, паттерн «Стратегия»).

Абстракцию графа желательно вынести в отдельный класс, сделав его либо параметром шаблона, либо передавая в алгоритм указатель/ссылку на объект базового класса представления графа.

Примечания

Есть небольшие недоработки и не достаточно тестов

Действия