Я пытаюсь вычислить способ преобразования функции helper
из рекурсии на итерацию, используя некоторую форму цикла.Изменить первый алгоритм глубины из рекурсии на итерацию
На самом деле я на самом деле тупик, и мне интересно, могут ли кто-нибудь из вас помочь. Это функция, созданная для поиска, если заданный путь начала и конца точки существует в ориентированном графе, используя первый обход глубины.
def helper(graph, current, visited):
if current in graph:
for neighbor in graph[current]:
if neighbor not in visited:
visited.append(neighbor)
helper(graph, neighbor, visited)
def DFS(graph, start, goal):
if start not in graph and goal not in graph:
return False
visited = [start]
helper(graph, start, visited)
return goal in visited