完全二叉树

简介: 完全二叉树
  • 二叉树:每个结点非常多 2 棵子树,没有其它限制了。
  • 二叉查找树:也叫二叉搜索树,首先它是二叉树,并且左子树上所有结点的值 小于 它根结点的值,右子树上所有结点的值大于它根结点的值。
  • 二叉排序树:就是二叉查找树。
  • 二叉平衡树:更加准确的应该叫 “平衡二叉树”,它是 “平衡二叉搜索树” 的简称。首先它是 “二叉搜索树”,其次,它是平衡的,即是它的每一个结点的左子树的高度和右子树的高度差至多为 1。

总结来说,二叉树就是每个节点非常多有两个子节点的树。它对节点的内容没要求。二叉排序树 = 二叉查找树。它是一种二叉树,但是对节点内容有要求。每个节点的左子树(如果有的话)里所有节点的值都必须小于当前节点的值;每个节点的右子树(如果有的话)里所有节点的值都必须大于当前节点的值。如果一颗二叉树看上去基本没有缺胳膊少腿(从根到每片叶子的路径长度非常多相差1),那么它是棵平衡二叉树。对于一般二叉树而言,平衡不平衡没啥特别意义,但是对二叉查找树而言,越平衡则查找效率越高。


延伸阅读:

  • 完全二叉树

完全二叉树是一种特殊的二叉树,满足以下要求:

所有叶子节点都出现在 k 或者 k-1 层,而且从 1 到 k-1 层必须达到最大节点数;第 k 层可以不是满的,但是第 k 层的所有节点必须集中在最左边。 需要注意的是不要把完全二叉树和“满二叉树”搞混了,完全二叉树不要求所有树都有左右子树,但它要求:任何一个节点不能只有左子树没有右子树;叶子节点出现在最后一层或者倒数第二层,不能再往上。

目录
相关文章
|
机器学习/深度学习 存储 算法
深入理解【二叉树】
深入理解【二叉树】
79 0
|
6月前
|
存储 C++
二叉树
二叉树“【5月更文挑战第22天】”
33 3
|
6月前
|
算法 网络协议 NoSQL
认识二叉树(详细介绍)
认识二叉树(详细介绍)
|
6月前
|
存储 数据库管理
【二叉树】
【二叉树】
49 0
|
搜索推荐
完全二叉树
完全二叉树是一种特殊的二叉树结构,它的每个节点都有两个子节点,除了最后一层外,每一层上的所有节点都有两个子节点。这种结构使得满二叉树具有较高的查找和插入性能。
87 6
|
搜索推荐
满二叉树
满二叉树是一种特殊的二叉树结构,它的每个节点都有两个子节点,除了最后一层外,每一层上的所有节点都有两个子节点。这种结构使得满二叉树具有较高的查找和插入性能。
104 9
24 二叉树
24 二叉树
50 0
|
存储 机器学习/深度学习
认识一棵二叉树
大家好,我是王有志。今天要学习的是编程中绕不开的结构--树,无论是二分搜索树,红黑树,B+树,还是的决策树和随机森林,都和树息息相关。
69 0
认识一棵二叉树
【二叉树】(二)
【二叉树】(二)
43 0