平衡二叉树、完全二叉树、满二叉树、二叉搜索(查找 / 排序)树、平衡二叉搜索树、二叉堆
来源:互联网 发布:中世纪 食物 知乎 编辑:程序博客网 时间:2024/06/05 07:50
查了一些博客、百科整理出以下关于树的定义以及易混点:
平衡二叉树:一棵空树或左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是平衡二叉树。(注意:实际应用中很少有不是二叉搜索树的平衡二叉树,所以很多语境下平衡二叉树即指平衡二叉搜索树,但本文中不使用这样的简称)
完全二叉树:设二叉树的高度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第 h 层从右向左连续缺若干结点。(完全二叉树是特殊的平衡二叉树)
满二叉树:深度为k,且有2的(k)次方-1个节点——每一层上的结点数都是最大结点数。(此为国内定义)(满二叉树是特殊的完全二叉树)
二叉搜索(查找 / 排序)树BST:左子树上的值都小于根结点的值,右子树上的值都大于根结点的值,且左右子树都是二叉排序树。
堆分为两种:最大堆——父结点的键值总是大于或等于任何一个子节点的键值,最小堆——父结点的键值总是小于或等于任何一个子节点的键值。常见的堆有二叉堆、二项式堆、斐波那契堆等。
(注意:实际应用中较少使用不是二叉堆的堆,所以很多语境下堆即指二叉堆,但本文中不使用这样的简称)
二叉堆:一种特殊的堆,是完全二叉树或者是近似完全二叉树。
平衡二叉树:一棵空树或左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是平衡二叉树。(注意:实际应用中很少有不是二叉搜索树的平衡二叉树,所以很多语境下平衡二叉树即指平衡二叉搜索树,但本文中不使用这样的简称)
完全二叉树:设二叉树的高度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第 h 层从右向左连续缺若干结点。(完全二叉树是特殊的平衡二叉树)
满二叉树:深度为k,且有2的(k)次方-1个节点——每一层上的结点数都是最大结点数。(此为国内定义)(满二叉树是特殊的完全二叉树)
二叉搜索(查找 / 排序)树BST:左子树上的值都小于根结点的值,右子树上的值都大于根结点的值,且左右子树都是二叉排序树。
平衡二叉搜索树AVL:一棵空树或它的左右两个子树的高度差的绝对值不超过1,左子树上的值都小于根结点的值,右子树上的值都大于根结点的值,且左右两个子树都是一棵平衡二叉树。常用算法有红黑树、AVL、Treap、伸展树等。(注意:AVL可以表示算法也可以表述树,二者不是一件事)
———————————————————————————
堆分为两种:最大堆——父结点的键值总是大于或等于任何一个子节点的键值,最小堆——父结点的键值总是小于或等于任何一个子节点的键值。常见的堆有二叉堆、二项式堆、斐波那契堆等。
(注意:实际应用中较少使用不是二叉堆的堆,所以很多语境下堆即指二叉堆,但本文中不使用这样的简称)
二叉堆:一种特殊的堆,是完全二叉树或者是近似完全二叉树。
(注意:二叉堆用于堆排序,但不意味着二叉堆就是堆排序,只是堆排序利用了二叉堆的优良性质)
———————————————————————————
阅读全文
0 0
- 平衡二叉树、完全二叉树、满二叉树、二叉搜索(查找 / 排序)树、平衡二叉搜索树、二叉堆
- 平衡二叉搜索树
- 树:二叉树几种形态(满二叉,完全二叉,线索二叉,二叉排序,平衡二叉,哈夫曼)
- 二叉树、满二叉树、完全二叉树、二叉排序树(二叉查找树)、平衡二叉树
- 二叉搜索树与平衡二叉树
- 搜索二叉树和平衡二叉树
- 二叉搜索树—平衡二叉树
- AVL平衡二叉搜索树
- AVLTree----平衡二叉搜索树
- AVL平衡搜索二叉树
- AVL平衡二叉搜索树
- AVLTree二叉平衡搜索树
- 平衡二叉查找树
- 平衡二叉查找树
- 二叉平衡查找树
- 二叉平衡查找树:
- 平衡二叉查找树
- 平衡查找二叉树
- Linux环境操作Tomcat常用命令
- 6 单例模式与多线程
- 扫描项目中的二维码关注微信公众号
- 7 拾遗增补
- 时间管理资源
- 平衡二叉树、完全二叉树、满二叉树、二叉搜索(查找 / 排序)树、平衡二叉搜索树、二叉堆
- onNewIntent调用时机
- LeetCode题目:494. Target Sum
- 云计算-负载均衡集群应用
- javascript开发:javascript机制
- Spring配置文件详解
- solr erro:no servers hosting shard
- DeepLearning tutorial ①
- java nio 基础