将节点插入二叉树时要遵守什么规则?

时间:2016-07-23 18:51:09

标签: c++ tree binary-tree

我知道在二进制搜索树中,元素是根据不等式的特性插入的,即:

 if(n->val > val) insert(n->left, val);  // root node greater then val insert to left 
 else if(n->val < val) insert(n->right, val);  // root node less then val insert to left 

 // I am ignoring the case when n->val == val here

我很好奇我应该在什么基础上将节点插入到纯(vanilla)二叉树中,如果有一个或者所有二叉树都带有一些额外的属性(二元搜索树及其不等式)。

1 个答案:

答案 0 :(得分:1)

General二叉树由节点组成,其中每个节点包含“左”引用,“右”引用和数据元素。树中最顶层的节点称为根。数据顺序没有其他限制。

但是有许多类型的二叉树。在文献中,您可以看到完整完整平衡等等。所有这些都有它自己的树结构规则。例如, full binary tree 是一棵树,其中除了树叶以外的每个节点都有两个子节点。 平衡二叉树具有叶节点的最小可能最大高度。这些特定的树类型引入了额外的属性。