TreeSelect[tree,crit]
提取出 tree 中 crit[treei] 为 True 的所有子树 treei.
TreeSelect[tree,crit,n]
提取出 crit[treei] 为 True 的前 n 个子树.
TreeSelect[tree,crit,levelspec,n]
提取出 levelspec 指定的层上的子树.
TreeSelect[crit]
表示可应用于树的 TreeSelect 的算符形式.
TreeSelect
TreeSelect[tree,crit]
提取出 tree 中 crit[treei] 为 True 的所有子树 treei.
TreeSelect[tree,crit,n]
提取出 crit[treei] 为 True 的前 n 个子树.
TreeSelect[tree,crit,levelspec,n]
提取出 levelspec 指定的层上的子树.
TreeSelect[crit]
表示可应用于树的 TreeSelect 的算符形式.
更多信息和选项
- TreeSelect 列出 Tree 对象中的任何层级范围上满足任何标准的子树. 可以按许多不同的顺序给出结果列表,包括深度优先和广度优先遍历.
- TreeSelect[tree,crit] 依次对 tree 的所有子树进行测试,尝试找出满足标准 crit 的子树.
- TreeSelect 使用与 TreeLevel 中一样的标准层级指定:
-
n 第 1 层到第 n 层 All 第 0 层到 Infinity Infinity 第 1 层到 Infinity {n} 只有第 n 层 {n1,n2} 第 n1 层到第 n2 层 - TreeSelect 以从左到右、深度优先的顺序遍历子树,访问父母之前先访问孩子.
- TreeSelect[…,TreeTraversalOrderorder] 允许以不同的顺序访问子树,如深度优先和广度优先的遍历.
- TreeSelect[crit][tree] 等价于 TreeSelect[tree,crit].
范例
打开所有单元 关闭所有单元基本范例 (4)
TreeSelect[[image], EvenQ @* TreeData]TreeSelect[[image], TreeLeafQ, 6]TreeSelect[[image], TreeLeafQ, {2}, 2]使用 TreeSelect 的算符形式:
TreeSelect[Length[TreeChildren[#]] == 3&][[image]]范围 (3)
TreeSelect[[image], Length[TreeChildren[#]] == 3&]TreeSelect[[image], Length[TreeChildren[#]] == 2&, 2]在树的位置指定中使用 TreeSelect 的算符形式:
TreeExtract[[image], {TreeSelect[Length[TreeChildren[#]] == 3&], 3}]选项 (3)
TreeTraversalOrder (3)
默认情况下,子树以深度优先的顺序列出,访问孩子后再访问父母:
TreeSelect[[image], True&, TreeTraversalOrder -> "DepthFirst"]TreeSelect[[image], True&, TreeTraversalOrder -> {"DepthFirst", "TopDown", "RightLeft"}]以广度优先的顺序列出子树,访问下一层上的节点之前先访问(距根节点)相同层级的节点:
TreeSelect[[image], True&, TreeTraversalOrder -> "BreadthFirst"]以叶优先的顺序列出子树,访问下一层上的节点之前先访问(距叶节点)相同层级的节点:
TreeSelect[[image], True&, TreeTraversalOrder -> "LeavesFirst"]属性和关系 (1)
TreeSelect[tree,crit,Infinity,Infinity] 等价于 TreeChildren@TreeExtract[tree,TreeSelect[crit]]:
TreeSelect[[image], EvenQ @* TreeData, Infinity, Infinity]% === TreeChildren@TreeExtract[[image], TreeSelect[EvenQ @* TreeData]]可能存在的问题 (1)
TreeSelect 默认从第 1 层开始,因此不会访问根:
TreeSelect[[image], True&, 1, Infinity]TreeSelect[[image], True&, {0, 1}, Infinity]相关指南
-
▪
- 树的属性与度量
文本
Wolfram Research (2021),TreeSelect,Wolfram 语言函数,https://reference.wolfram.com/language/ref/TreeSelect.html (更新于 2024 年).
CMS
Wolfram 语言. 2021. "TreeSelect." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2024. https://reference.wolfram.com/language/ref/TreeSelect.html.
APA
Wolfram 语言. (2021). TreeSelect. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/TreeSelect.html 年
BibTeX
@misc{reference.wolfram_2026_treeselect, author="Wolfram Research", title="{TreeSelect}", year="2024", howpublished="\url{https://reference.wolfram.com/language/ref/TreeSelect.html}", note=[Accessed: 30-October-2026]}
BibLaTeX
@online{reference.wolfram_2026_treeselect, organization={Wolfram Research}, title={TreeSelect}, year={2024}, url={https://reference.wolfram.com/language/ref/TreeSelect.html}, note=[Accessed: 30-October-2026]}