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


Python NetworkX to_nested_tuple用法及代码示例


本文简要介绍 networkx.algorithms.tree.coding.to_nested_tuple 的用法。

用法:

to_nested_tuple(T, root, canonical_form=False)

返回给定树的嵌套元组表示。

树的嵌套元组表示是递归定义的。具有一个节点且没有边的树由空元组 () 表示。具有 k 子树的树由长度为 k 的元组表示,其中每个元素都是子树的嵌套元组表示。

参数

TNetworkX 图

表示树的无向图对象。

root节点

T 中的节点解释为树的根。

canonical_formbool

如果 True ,则对每个元组进行排序,以便函数返回有根树的规范形式。这意味着“lighter” 子树将在“heavier” 子树之前显示为嵌套元组。这样,每个同构有根树都具有相同的嵌套元组表示。

返回

元组

树的嵌套元组表示。

注意

此函数是 not 的倒数 from_nested_tuple() ;唯一的保证是有根树是同构的。

例子

该树不必是平衡二叉树:

>>> T = nx.Graph()
>>> T.add_edges_from([(0, 1), (0, 2), (0, 3)])
>>> T.add_edges_from([(1, 4), (1, 5)])
>>> T.add_edges_from([(3, 6), (3, 7)])
>>> root = 0
>>> nx.to_nested_tuple(T, root)
(((), ()), (), ((), ()))

继续上面的例子,如果 canonical_formTrue ,嵌套的元组将被排序:

>>> nx.to_nested_tuple(T, root, canonical_form=True)
((), ((), ()), ((), ()))

甚至路径图也可以解释为一棵树:

>>> T = nx.path_graph(4)
>>> root = 0
>>> nx.to_nested_tuple(T, root)
((((),),),)

相关用法


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