首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
其他好文
> 详细
二叉树
时间:
2019-03-17 23:05:59
阅读:
248
评论:
0
收藏:
0
[点我收藏+]
标签:
方式
相交
超过
深度
arc
结构
构建
个数
binary
1. 二叉树
二叉树(Binary Tree)是含有n个结点的有限集合,当n = 0时称为空二叉树。在非空二叉树中:
有且仅有一个称为根的结点
其余结点划分为两个互不相交的子集 L 和 R, 其中 L 和 R 也是一棵二叉树,分别称为左子树和右子树。
2. 满二叉树
一棵深度为 k 且有着 2^k - 1 个结点的二叉树称为满二叉树
3. 完全二叉树
从根起自上而下,自左而右,给满二叉树中的每个结点从1至n连续编号,编号为 i 的结点可称为 i 结点。深度为 k 且含有 n 个结点的二叉树,如果其每个结点都与深度为 k 的满二叉树中编号从 1 至 n 一一对应,则称为完全二叉树
4. 堆
堆是一类完全二叉树,常用语实现排序,选择最小(大)值和优先队列
其所有非叶子结点均不大于(或不小于)其左右孩子结点
5. 二叉查找树
二叉查找树(Binary Search Tree)又称为二叉排序树。或者是一棵空二叉树,或者是具有如下特性的二叉树
若左子树不空,则左子树上所有结点的值均小于根结点的值
若右子树不空,则右子树上所有结点的值均大于根结点的值
左、右子树也分别是二叉查找树
其查找效率与树的高度直接相关
6. 平衡二叉树
平衡二叉查找树(Balanced Binary Sort Tree),简称平衡二叉树。
平衡二叉树或者是棵空树,或者具有下列性质:
左右子树都是平衡二叉树
且左右子树的高度之差的绝对值不超过 1。
若将二叉树结点的平衡因子定义为该结点的左子树的高度减去右子树的高度,则所有结点的平衡因子只可能为 -1、0、1.
其中只要有一个结点的平衡因子的绝对值大于 1,那么这个棵树就失去平衡。
7. AVL树
平衡二叉树的一种实现
通过左旋、右旋、先左旋再右旋或者先右旋再左旋,来实现自平衡。
8. 红黑树
平衡二叉树的一种实现
特性:
根结点是黑色的
每个叶子结点是黑色的(指为空的叶子结点)
如果一个结点是红色的,则它的子树必须是黑色的
从一个结点到该结点的子孙结点的所有路径上包含相同数目的黑结点
主要用于存储有序的数据,并且通过维持树的平衡来提高搜索效率
9. B树
二叉查找树和平衡二叉树都是典型的二叉查找树结构,查找的时间复杂度与树的高度相关。一般而言,树的高度越低,则查找效率越高。
为了降低树的高度,可令每个结点存储更多元素,将平衡二叉树扩展为平衡二叉查找树。构建磁盘文件索引时其典型应用之一。
树中每个结点最多含有 m 棵子树
若根结点是非终端结点,则至少有2棵子树
除根结点之外所有非终端结点至少有[ m / 2]棵子树
每个非终端结点中包含(n, A0, K1, A1, K2, A2, ~ , Kn, An)
Ki 为关键字,按升序排序
指针Ai 指向子树的根结点,Ai - 1 指向子树中所有结点的关键字均小于 Ki,且大于 Ki - 1
关键字的个数 n 必须满足:[ m / 2](向上取整) - 1 <= n <= m - 1
所有叶子结点都出现在同一层,叶子结点不包含任何信息
10. B+树
与B树最大的不同在于:
通常 B+ 树有两个头指针,一个指向根结点,一个指向关键字最小的叶子结点。
因此查找方式有两种:
从根结点开始
从最小关键字起按顺序查找
二叉树
标签:
方式
相交
超过
深度
arc
结构
构建
个数
binary
原文地址:https://www.cnblogs.com/BitingCat/p/10549301.html
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
分布式事务
2021-07-29
OpenStack云平台命令行登录账户
2021-07-29
getLastRowNum()与getLastCellNum()/getPhysicalNumberOfRows()与getPhysicalNumberOfCells()
2021-07-29
【K8s概念】CSI 卷克隆
2021-07-29
vue3.0使用ant-design-vue进行按需加载原来这么简单
2021-07-29
stack栈
2021-07-29
抽奖动画 - 大转盘抽奖
2021-07-29
PPT写作技巧
2021-07-29
003-核心技术-IO模型-NIO-基于NIO群聊示例
2021-07-29
Bootstrap组件2
2021-07-29
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!