现在有一棵二叉树查找树如下:

如果我们需要删除一个结点,而且在删除之后,依然满足二叉查找树的数据排序策略。此时删除操作可分为一下三种情况。如下


情况1结点没有左子树
如图:一棵没有左子树的二叉树

如果在此情况下删除结点,按照结点的位置又可以分为三种处理方式。如下

  • 删除根结点:删除根结点也就是删除结点 5,此时只需将根结点指针指向其右子树结点。如下图

  • 删除叶子结点:如果删除的结点是叶子结点也就是结点9,此时只需将父节点指向NULL,如下图

  • 三处中间结点:如果删除的结点是中间结点也就是结点6,此时只要将父节点指向右子结点即可。如下图

二叉树(BST树)内结点的删除(3种情况全解)相关推荐

  1. js和php能生成一样的随机数_JavaScript_JS生成某个范围的随机数【四种情况详解】,前言: JS没有现成的函数,能 - phpStudy...

    JS生成某个范围的随机数[四种情况详解] 前言: JS没有现成的函数,能够直接生成指定范围的随机数. 但是它有个函数:Math.random()  这个函数可以生成 [0,1) 的一个随机数. 利用它 ...

  2. Android Studio打不开虚拟机,两种情况详解

    Android Studio打不开虚拟机,两种情况详解 文章目录 Android Studio打不开虚拟机,两种情况详解 1.VT-x is disabled in BIOS 2.Emulator文件 ...

  3. 算法 二叉树 BST树

    二叉排序树 BST树的定义 BST树结构 BST树的创建 递归中序遍历 非递归中序遍历 逆向非递归中序遍历 删除结点 BST树的定义 BST树又称为:二叉排序树,二叉搜索树 二叉搜索树或者是一颗空树, ...

  4. 树的四种遍历案例和AVL树的旋转的四种情况

    树与二叉树 一, 树的基本术语 树中一个结点的子结点个数称为该结点的度, 树中结点的最大度数称为树的度.如结点B的度为2,结点D的度为3,树的度为3. 度大于0的结点称为分支结点(又称非终端结点),度 ...

  5. B树插入和删除的各种情况分析

    1.b树的定义 b树是一种平衡的多路查找树,他在文件系统很有用. 一颗m阶的B树,或为空树,或者满足依稀阿特性的M叉树: 每个结点至多拥有M课子树 根结点至少拥有两颗子树 除了根结点以外,其余每个分支 ...

  6. 二叉树、二叉树排序树的实现及遍历

    在学习二叉树之前先要学[先导知识]树的概念和表示方法 目录 1.二叉树 2.二叉树的遍历 3.二叉排序树 前言 对于大量的数据而言,链表的线性访问时间太慢,不宜使用.本章节将会介绍一种简单的数据结构: ...

  7. 3. 数据结构--二叉树 BST AVL树 Huffman

    数据结构–二叉树 KEY:(不敢相信没有堆-) 二叉树的定义及其主要特征 ☑️ 二叉树的顺序存储结构和链式存储结构实现 二叉树的遍历及应用 二叉排序(查找.检索)树 (BST) 平衡的二叉检索树- A ...

  8. 【数据结构】二叉搜索树(BST树)的定义、构建、插入、删除及查找操作

    一.概念 二叉搜索树(BST树):又叫二叉排序树,二叉查找树.它或者是一棵空树:或者是具有以下性质的二叉树:     1.每个结点都有一个数据域,且所有节点的数据域互不相同:     2.若它的左子树 ...

  9. 二叉树排序树插入、创建、删除和查找

    二叉树排序树插入.创建.删除和查找 二叉排序树的概念 ​ 二叉排序树又称二叉查找树,它或者是一棵空树,或者是具有下列性质的二叉树 若它的左子树不为空,则左子树上所有结点的值均小于根结点的值 若它的右子 ...

最新文章

  1. 申卫星:“十四五”数字经济高质量发展需要法治护航
  2. mysql 必须安装php_非root模式下安装mysql php小记
  3. Matlab读取avi视频并播放
  4. 为什么说,每个人都应该多读些书?
  5. go generate介绍及使用
  6. Eclipse 下如何引用另一个项目的Java文件
  7. es6 Object.keys(),Object.values(),Object.entries()
  8. TIM SWEENEY:引擎及图形学的未来
  9. eclipse使用ModelGoon插件自动生成java类的UML图
  10. hdu5461-Largest Point(贪心)
  11. [序列化] SerializeHelper--序列化操作帮助类 (转载)
  12. java Socket IO流关闭问题(java.net.SocketException: Socket is closed)
  13. 蒙特卡洛(Monte Carlo)方法的理解
  14. 移动端调试神器(TCon)-- 基于 try catch 捕获所有异常的web移动端控制台(调试工具、console)
  15. 金九银十,测试思维面试题最新整理
  16. 薄如便签纸的概念闪存U盘:贴在电脑上就能用
  17. 利用 Matlab Simulink 平台搭建双馈风力发电机在电网中的模型
  18. python多线程处理数据并获得子线程返回值
  19. 两个实体不是同个类同名字段赋值问题
  20. 对话哈希未来贾英昊:资产上链的第一性原理 |链捕手

热门文章

  1. pyecharts bar每个柱子显示不同的颜色
  2. ffmpeg所支持的所有视频或音频文件类型
  3. 人机交互论文导读——EarBuddy: Enabling On-Face Interaction via Wireless Earbuds
  4. Bose耳机无法蓝牙连接Win10系统的解决方法
  5. 企业为何无法忽视物联网设备管理
  6. 最高一日三送,苏宁易购把握到家业务爆发期
  7. 百度竞价搜索推广出价策略
  8. 曲面细分着色器学习记录
  9. 服务器系统刂金苹果-下拉靠谱,百度快速排名礻金苹果实力刂:奶牛镇的小时光花菇喜欢什么 花菇好感度怎么加...
  10. JavaScript DOM 编程艺术 (第二版)学习之3-4章