Написать программу, реализующую алгоритм поиска в глубину (DFS) для графа.
Поиск в глубину (DFS) для графаАлгоритм поиска в глубину (DFS) является основным методом обхода или поиска в деревьях или графах. def dfs(graph, start, visited=None): if visited is None: visited = set() visited.add(start) print(start) # Для демонстрации порядка обхода for next in graph[start] - visited: dfs(graph, next, visited) return visited # Пример графа в виде словаря graph = { 'A': set(['B', 'C']), 'B': set(['A', 'D', 'E']), 'C': set(['A', 'F']), 'D': set(['B']), 'E': set(['B', 'F']), 'F': set(['C', 'E']) } # Пример вызова функции dfs_output = dfs(graph, 'A') Результат выполнения кодаПорядок обхода: A B D E F C Эта функция DFS начинает обход с указанной вершины и рекурсивно посещает соседние вершины. | |
| |
Просмотров: 19 | |
Всего комментариев: 0 | |