TreeInsert
TreeInsert[tree,child,pos]
在 tree 中由 pos 指定的位置插入 child.
TreeInsert[tree,child,{pos1,pos2,…}]
在多个位置插入 child.
TreeInsert[child,pos]
表示可以应用于树的 TreeInsert 运算符形式.
更多信息和选项
- TreeInsert 允许在 Tree 对象的任何位置插入子树或通用表达式作为叶子. »
- TreeInsert[tree,child,{i,j,…}] 在位置 {i,j,…} 处插入子树 child.
- TreeInsert 可以使用由 TreePosition 返回的位置规范以及在 TreeExtract 和 TreeReplacePart 等函数中使用的扩展形式. »
- 单独的位置规范 pos 可以以{part1,part2,…}的形式给出,其中部分规范 parti 包括:
-
i 第 i 个子节点 -i 倒数第 i 个子节点 {i1,i2,…} 位置编号为 i1、i2、… 的孩子的列表 "key" 键为 "key" 的孩子 Key[k] 具有任意键 k 的孩子 - 在 TreeInsert[tree,child,{p1,p2,…}] 中,如果所有 pi 均为列表,则将 {p1,p2,…} 解释为单个位置规范的列表. 否则 {p1,p2,…} 将被视为单独的位置规范.
- TreeInsert 适用于含有子树 Association 的树,使用与 Part 中相同的键规范. »
- 如果 tree 含有子树 Association,TreeInsert[tree,keyvalue,pos] 在关联中插入子树.
- 如果以 "key" 或 Key[k] 形式指定位置,则 TreeInsert 在与该键对应的子树之前插入一个新的子树,或者如果该键已经存在,则覆盖该值.
- 如果要插入的子树的键已经存在,则删除具有相同键的旧子树.
- TreeInsert[child,pos][tree] 等价于 TreeInsert[tree,child,pos].
- TreeInsert 的选项与 Tree 的选项相同.
范例
打开所有单元关闭所有单元基本范例 (3)
范围 (7)
关联 (7)
如果键为字符串,则 Key 封装不是必须的:
属性和关系 (9)
插入除 Tree 对象之外的表达式等同于插入叶子:
插入:使用 Splice 插入多个子树:
TreeInsert 将子树插入树中:
Insert 可以直接插入子表达式:
对于具有 n 个子节点的树,有 n+1 个可用位置来插入一个新的子节点:
如果 pos 不是列表,则 pos 和 {pos} 是等效规范:
如果重复提及某个位置,则 TreeInsert 重复插入新的子树:
TreeInsert 可以使用 TreePosition 返回的位置列表:
以下是 TreeExtract 返回的子树:
如果所有 pi 均为列表,则 TreeInsert[tree,new,{p1,p2,…}] 将 {p1,p2,…} 视为单个位置规范的列表:
对于 {{1,2},{3,4}},新的子树插入位置 {1,2} 和 {3,4}:
可能存在的问题 (3)
文本
Wolfram Research (2021),TreeInsert,Wolfram 语言函数,https://reference.wolfram.com/language/ref/TreeInsert.html (更新于 2024 年).
CMS
Wolfram 语言. 2021. "TreeInsert." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2024. https://reference.wolfram.com/language/ref/TreeInsert.html.
APA
Wolfram 语言. (2021). TreeInsert. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/TreeInsert.html 年