TreeLevel

TreeLevel[tree,levelspec]

给出 levelspec 指定的层级上 tree 的所有子树的列表.

TreeLevel[tree,levelspecelem]

给出由 levelspec 指定的层级上的子树元素 elem 的列表.

TreeLevel[levelspec]

表示可应用于树的 TreeLevel 的运算符形式.

更多信息和选项

  • TreeLevel 列出 Tree 对象中任何级别范围内的子树. 子树列表可以以许多不同的顺序给出,包括深度优先和广度优先遍历.
  • TreeLevel[tree,levelspec] 给出给定层级的子树列表. 这也可以表示为 TreeLevel[tree,levelspec"Subtree"].
  • TreeLevel[tree,levelspec"Data"] 给出给定层级的数据列表.
  • TreeLevel 使用标准层级规范:
  • n1n
    All0 层至 Infinity
    Infinity1 层至 Infinity
    {n}仅层 n
    {n1,n2}n1n2
    "Leaves"-1
    "NonLeaves"0 层到 -2
  • 正数层 n+1tree 的所有子树组成,这些子树是在层 n 的子树的孩子.
  • 0 对应于树根.
  • -1 对应于树叶.
  • 负数层 -(n+1) 由所有子树组成,这些子树的孩子位于层 -1-2-n,其中最高层为 -n.
  • TreeLevel 以从左到右、深度优先的顺序遍历子树,子级先于父级访问.
  • TreeLevel[,TreeTraversalOrderorder] 允许以不同的顺序访问子树,例如深度优先和广度优先遍历.
  • TreeLevel[levelspec][tree] 等价于 TreeLevel[tree,levelspec].

范例

打开所有单元关闭所有单元

基本范例  (3)

提取第二层的子树:

提取一系列层级的数据:

使用 TreeLevel 的运算符形式:

范围  (8)

层级规范  (7)

提取所有层级上的子树:

提取 123 层:

仅提取层 3 上的子树:

提取 02 层上的子树:

提取所有层,从层 1 开始:

还提取层 0

负层:

正负层级可以混合:

提取叶子:

提取非叶子元素:

使用 TreeLevel 作为树位置规范中的运算符形式:

元素  (1)

提取子树(默认):

提取数据:

选项  (3)

TreeTraversalOrder  (3)

默认情况下,子树以深度优先的顺序列出,父级在他们的子级之后被访问:

指定一个自上而下、从右到左的变体:

以广度优先顺序列出子树,从根开始同一层级的节点在下一级节点之前被访问:

以叶优先顺序列出子树,从叶开始同一层级的节点在下一级节点之前被访问:

应用  (2)

从根开始提取连续层级的子树:

从底部开始提取连续层级的子树:

属性和关系  (4)

TreeLevel[tree,levelspec] 等价于 TreeExtract[tree,TreeLevel[levelspec]]

Level[expr,levelspec] 等价于 TreeLevel[ExpressionTree[expr,"Arguments"],levelspec"Data"]:

Level[expr,levelspec,HeadsTrue] 等价于 TreeLevel[ExpressionTree[expr,"Subexpressions"],levelspec"Data"]:

TreeLeaves 给出层 -1 上的子树:

可能存在的问题  (1)

TreeLevel 默认情况下从层 1 开始,因此不提取整个树:

Wolfram Research (2021),TreeLevel,Wolfram 语言函数,https://reference.wolfram.com/language/ref/TreeLevel.html (更新于 2022 年).

文本

Wolfram Research (2021),TreeLevel,Wolfram 语言函数,https://reference.wolfram.com/language/ref/TreeLevel.html (更新于 2022 年).

CMS

Wolfram 语言. 2021. "TreeLevel." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2022. https://reference.wolfram.com/language/ref/TreeLevel.html.

APA

Wolfram 语言. (2021). TreeLevel. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/TreeLevel.html 年

BibTeX

@misc{reference.wolfram_2024_treelevel, author="Wolfram Research", title="{TreeLevel}", year="2022", howpublished="\url{https://reference.wolfram.com/language/ref/TreeLevel.html}", note=[Accessed: 22-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_treelevel, organization={Wolfram Research}, title={TreeLevel}, year={2022}, url={https://reference.wolfram.com/language/ref/TreeLevel.html}, note=[Accessed: 22-November-2024 ]}