二叉排序树、平衡二叉树、B-树
来源:互联网 发布:教育统计软件安装 编辑:程序博客网 时间:2024/06/14 00:45
二叉排序树(BST)
- 删除关键字操作
- 1)p结点为叶子节点
- 直接删除
- 2)p节点只有左子树和右子树
- 删除p节点,把唯一的子树挂在原节点位置上
- 3)p节点既有左子树又有右子树
- 沿着左子树右节点找到左子树最大关键字节点 r ,或沿着右子树左节点找出右子树最小关键字节点 r 。把节点 r 中关键字与 p 中关键字进行替换,在按1)或2)删除节点 r
- 1)p结点为叶子节点
平衡二叉树(AVL)
- 平衡因子:某结点的左子树与右子树的高度(深度)差即为该结点的平衡因子(BF,Balance Factor)。
- 平衡二叉树上所有结点的平衡因子只可能是 -1,0 或 1。
- 平衡二叉树思想
- 旋转操作:
- 单向左旋平衡处理、单向右旋平衡处理:对平衡因子不为0、1、-1的结点进行旋转操作
- 双向(先左后右、先右后左)旋转平衡处理:先对对平衡因子不为0、1、-1的结点的左子树或右子树进行旋转操作,再对结点本身做旋转操作。
- 例:插入55,12,24,47,30,68,19
B-树
是一种多路搜索树
由于M/2(向上取整)的限制,在插入结点时,如果结点已满,需要将结点分裂为两个各占M/2(向上取整)的结点;删除结点时,需将两个不足M/2(向上取整)的兄弟结点合并。
阅读全文
0 0
- 二叉排序树、平衡二叉树、B-树
- 二叉排序树 平衡二叉树
- 二叉排序树和平衡二叉树
- 二叉排序树、二叉平衡树算法
- 平衡二叉树之二叉排序树
- 二叉排序树和平衡二叉树
- 二叉排序树与平衡二叉树
- 二叉排序树和平衡二叉树
- 二叉排序树转平衡二叉树
- 二叉排序树、平衡二叉排序树、B-树、B+树、B*树
- BST二叉排序树,AVL平衡二叉树,RBT红黑树,B-树,B+树,B*树
- 二叉树、二叉排序树、平衡二叉树、红黑树
- 基于树的查找(二叉排序树、平衡二叉树、B树、B+树、伸展树和红黑树)
- 数据结构.平衡二叉树.从二叉排序树到平衡二叉树
- 数据结构-二叉排序树,平衡二叉树,键树
- 动态查找-二叉排序树和平衡二叉树
- 二叉树-详解平衡二叉排序树AVL
- 二叉排序树、平衡二叉树和红黑树
- UML类图(PHP)
- Spring学习笔记
- java调用浏览器执行搜索
- python中的实例方法、类方法、静态方法
- sqlserver调优
- 二叉排序树、平衡二叉树、B-树
- socket编程为什么要选择AF_INET
- Java中的枚举、接口和代码块
- 【个人训练】(HDU2199)Can you solve this equation?
- 阿里巴巴CTO行癫:阿里双11是世界互联网技术的超级工程
- 内存学习之:大端模式、小端模式 详解
- 关于PGSQL的时间格式问题的报错总结
- FindBugs规则整理
- Android ADB命令大全(通过ADB命令查看wifi密码、MAC地址、设备信息、操作文件、查看文件、日志信息、卸载、启动和安装APK等)