@ivanburdin

Как реализовать алгоритм поиска в глубину и в ширину python?

Есть граф, связи в нем описаны словарем:

data2 = {
  1: [2, 3],
  2: [3, 4],
  4: [1]
}

То есть: из первой вершины графа мы можем попасть во вторую и третью, из второй в третью и 4 , и из 4 в 1

Есть два алгоритма поиска, Depth-First Search (поиск в глубину) Breadth-First Search(в ширину),

для случая с графом ниже подходит решение (DFS) :

def dfs(d, start):
    print(start)
    for k in d.get(start, []):
        dfs(d, k)

data = {
    1: [2, 3],
    2: [4]
}


Помогите с модификацией алгоритма поиска в глубину, или лучше использовать поиск в ширину?
  • Вопрос задан
  • 3294 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы