当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python NetworkX dfs_edges用法及代码示例


本文简要介绍 networkx.algorithms.traversal.depth_first_search.dfs_edges 的用法。

用法:

dfs_edges(G, source=None, depth_limit=None)

在深度优先搜索 (DFS) 中迭代边。

G 的节点执行深度优先搜索并按顺序生成边。这可能不会在 G 中生成所有边(参见 edge_dfs )。

参数

GNetworkX 图
source节点,可选

指定深度优先搜索的起始节点并在从源可到达的组件中产生边。

depth_limitint,可选(默认=len(G))

指定最大搜索深度。

生成(Yield)

边:节点的 2 元组

产生由深度优先搜索产生的边。

注意

如果未指定源,则任意重复选择源,直到搜索到图中的所有组件。

该函数的实现改编自 David Eppstein 在 PADS 中的深度优先搜索函数 [1],并根据维基百科文章“Depth-limited search”[2] 进行修改以允许深度限制。

参考

1

http://www.ics.uci.edu/~eppstein/PADS

2

https://en.wikipedia.org/wiki/Depth-limited_search

例子

>>> G = nx.path_graph(5)
>>> list(nx.dfs_edges(G, source=0))
[(0, 1), (1, 2), (2, 3), (3, 4)]
>>> list(nx.dfs_edges(G, source=0, depth_limit=2))
[(0, 1), (1, 2)]

相关用法


注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.algorithms.traversal.depth_first_search.dfs_edges。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。