完全二叉树

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

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


延伸阅读:

  • 完全二叉树

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

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

目录
相关文章
|
8月前
|
存储 算法 Java
二叉树层序遍历
二叉树层序遍历
64 0
|
8月前
|
算法
【二叉树】层序遍历
【二叉树】层序遍历
79 0
二叉树层序遍历及判断完全二叉树
二叉树层序遍历及判断完全二叉树
167 2
05_二叉树的层次遍历II
05_二叉树的层次遍历II
04_二叉树的层序遍历
04_二叉树的层序遍历
|
搜索推荐
完全二叉树
完全二叉树是一种特殊的二叉树结构,它的每个节点都有两个子节点,除了最后一层外,每一层上的所有节点都有两个子节点。这种结构使得满二叉树具有较高的查找和插入性能。
94 6
|
搜索推荐
满二叉树
满二叉树是一种特殊的二叉树结构,它的每个节点都有两个子节点,除了最后一层外,每一层上的所有节点都有两个子节点。这种结构使得满二叉树具有较高的查找和插入性能。
119 9
|
存储 机器学习/深度学习
认识一棵二叉树
大家好,我是王有志。今天要学习的是编程中绕不开的结构--树,无论是二分搜索树,红黑树,B+树,还是的决策树和随机森林,都和树息息相关。
75 0
认识一棵二叉树
|
算法
二叉树的层次遍历
层次遍历就是即逐层地,从左到右访问所有节点
二叉树的层次遍历