dfs_postorder_nodes#
- dfs_postorder_nodes(G, source=None, depth_limit=None, *, sort_neighbors=None)[source]#
生成从源节点开始的深度优先搜索后序遍历中的节点。
- 参数:
- GNetworkX 图
- source节点,可选
指定深度优先搜索的起始节点。
- depth_limit整数,可选 (默认=len(G))
指定最大搜索深度。
- sort_neighbors函数 (默认=None)
一个函数,接受节点的迭代器作为输入,并返回具有自定义顺序的相同节点的迭代器。例如,
sorted
将按递增顺序排序节点。
- 返回值:
- nodes: generator
一个生成器,生成深度优先搜索后序遍历中的节点。
注意
如果未指定源节点,则会任意选择一个源节点并重复搜索,直到搜索到图中的所有连通分量。
此函数的实现改编自 David Eppstein 在 PADS 中的深度优先搜索函数,并根据维基百科文章“深度受限搜索”进行了修改,以允许设置深度限制。
示例
>>> G = nx.path_graph(5) >>> list(nx.dfs_postorder_nodes(G, source=0)) [4, 3, 2, 1, 0] >>> list(nx.dfs_postorder_nodes(G, source=0, depth_limit=2)) [1, 0]