我有一个有向图,我编写了一个代码,使用bfs算法查找起始节点的所有路径。这是我的代码:
G = nx.DiGraph()
G.add_path([1, 2])
G.add_path([1, 3])
G.add_path([2, 7])
G.add_path([3, 4])
G.add_path([4, 2])
G.add_path([4, 6])
G.add_path([5, 2])
G.add_path([6, 5])
G.add_path([7, 8])
G.add_path([8, 9])
G.add_path([8, 10])
def bfs(G, s):
q = queue.Queue()
visited = []
q.put(s)
visited.append(s)
while not q.empty():
v = q.get()
for node in G.neighbors(v):
if node not in visited:
q.put(node)
visited.append(node)
print(visited)
bfs(G, 3)
算法的问题是我可以找到将从起始节点访问的所有节点,但我不能保存(打印)我找到的每个路径。如何修改我的算法来实现它?