博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
二叉树结点删除操作
阅读量:4359 次
发布时间:2019-06-07

本文共 616 字,大约阅读时间需要 2 分钟。

二叉树的结点删除要分为三类:

1、没有子结点
2、有一个子结点
3、有两个子结点

代码实现:

public void delete02(TreeNode node) {        TreeNode pre = null;        TreeNode temp = null;        if(node.right == null) {            node = node.left;        } else if(node.left == null) {            node = node.right;        } else {            temp = node.left;            pre = node;            while(temp.right != null) {                pre = temp;                temp = temp .right;            }            node.val = temp.val;            pre.right = temp.left;        }        temp = null;    }

也可以参考下面这个:

转载于:https://www.cnblogs.com/shiqisir/p/10744004.html

你可能感兴趣的文章
WinForm 小程序 NotePad
查看>>
JSTL 核心标签库 使用
查看>>
线程池ThreadPool
查看>>
hibernate入门实例
查看>>
WPF路由事件二:路由事件的三种策略(转)
查看>>
Java中的内存泄露
查看>>
asp.net 自定义控件验证FCKeditor是否为空
查看>>
oracle 查看表空间的脚本
查看>>
Python 描述符是什么?以及如何实现
查看>>
程序员的激情其实是一种痛苦
查看>>
MySQL后台线程的清理工作
查看>>
连接mysql数据库,创建用户模型
查看>>
cogs1885 [WC2006]水管局长数据加强版
查看>>
paramiko模块
查看>>
[原创]茗洋AaronYang的 jquery.myselect.js 我的一次前端突破[上]
查看>>
1083 是否存在相等的差
查看>>
配置APP的图标
查看>>
【线段树区间最值单点更新模板】BNUOJ 52965 E Excellent Engineers
查看>>
String、StringBuffer与StringBuilder之间区别
查看>>
Timer.3 - Binding arguments to a handler
查看>>