gpt4 book ai didi

python - networkx是否支持按label遍历dfs

转载 作者:行者123 更新时间:2023-11-28 22:55:41 25 4
gpt4 key购买 nike

networkx dfs_edges() 函数将遍历子节点。据我所知,http://networkx.lanl.gov/文档没有在 dfs_edges() 中指定一个参数,以仅在边具有特定标签时进行遍历。

此外,我查看了 dfs_labeled_edges(),但它只告诉您在使用 DFS 迭代图形时的遍历方向。

最佳答案

没有仅遍历具有给定标签的边的选项。如果您不介意制作图表的副本,您可以构建一个新图表,其中仅包含带有您想要的特定标签的边。

如果这不起作用,那么修改 dfs_edges() 的源代码就不会那么困难。例如

if source is None:
# produce edges for all components
nodes=G
else:
# produce edges for components with source
nodes=[source]
visited=set()
for start in nodes:
if start in visited:
continue
visited.add(start)
stack = [(start,iter(G[start]))] <- edit here
while stack:
parent,children = stack[-1]
try:
child = next(children)
if child not in visited:
yield parent,child
visited.add(child)
stack.append((child,iter(G[child]))) <- and edit here
except StopIteration:
stack.pop()

关于python - networkx是否支持按label遍历dfs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16574660/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com