Golang | Leetcode Golang题解之第450题删除二叉搜索树的节点

题目:

题解:

func deleteNode(root *TreeNode, key int) *TreeNode {var cur, curParent *TreeNode = root, nilfor cur != nil && cur.Val != key {curParent = curif cur.Val > key {cur = cur.Left} else {cur = cur.Right}}if cur == nil {return root}if cur.Left == nil && cur.Right == nil {cur = nil} else if cur.Right == nil {cur = cur.Left} else if cur.Left == nil {cur = cur.Right} else {successor, successorParent := cur.Right, curfor successor.Left != nil {successorParent = successorsuccessor = successor.Left}if successorParent.Val == cur.Val {successorParent.Right = successor.Right} else {successorParent.Left = successor.Right}successor.Right = cur.Rightsuccessor.Left = cur.Leftcur = successor}if curParent == nil {return cur}if curParent.Left != nil && curParent.Left.Val == key {curParent.Left = cur} else {curParent.Right = cur}return root
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/54133.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

金镐开源组织成立,增加最新KIT技术,望能为开源添一把火

国内做开源的很多,知名的若依、芋道源码、Pig、Guns等,可谓是百花齐放,虽然比不上Apache,但也大大提高了国内的生产力。经过多年的发展,一些开源项目逐渐也都开始商业化。基于这样的背景,我拉拢了三个技术人…

【重学 MySQL】三十九、Having 的使用

【重学 MySQL】三十九、Having 的使用 基本语法示例示例 1:使用 HAVING 过滤分组示例 2:HAVING 与 WHERE 的结合使用 注意点WHERE 与 HAVING 的对比基本定义与用途主要区别示例对比总结 在 MySQL 中,HAVING 子句主要用于对 GROUP BY 语句产生…

使用powershell的脚本报错:因为在此系统中禁止执行脚本

1.添加powershell功能环境: 2.启动powershell的执行策略 因为在此系统中禁止执行脚本。 set-executionpolicy unrestricted

【计算机视觉】ch1-Introduction

相机模型与成像 1. 世界坐标系 (World Coordinate System) 世界坐标系是指物体在真实世界中的位置和方向的表示方式。在计算机视觉和图像处理领域,世界坐标系通常是一个全局坐标系统,描述了摄像机拍摄到的物体在实际三维空间中的位置。它是所有其他坐标…

刷题day11 栈与队列下【逆波兰表达式求值】【滑动窗口最大值】【前 K 个高频元素】

⚡刷题计划day11 栈与队列继续,可以点个免费的赞哦~ 往期可看专栏,关注不迷路, 您的支持是我的最大动力🌹~ 目录 ⚡刷题计划day11 栈与队列继续,可以点个免费的赞哦~ 往期可看专栏,关注不迷路&#xf…

无心剑七绝《华夏中兴》

七绝华夏中兴 长空万里尽春声 治世群英喜纵横 一代雄才华夏梦 中兴日月照前程 2024年10月1日 平水韵八庚平韵 无心剑的七绝《华夏中兴》通过对自然景观和国家景象的描绘,展现了一种恢弘的气势和对未来的美好愿景。 意境开阔:首句“长空万里尽春声”以广阔…

MATLAB数字水印系统

课题介绍 本课题为基于MATLAB的小波变换dwt和离散余弦dct的多方法对比数字水印系统。带GUI交互界面。有一个主界面GUI,可以调用dwt方法的子界面和dct方法的子界面。流程包括,读取宿主图像和水印图像,嵌入,多种方法的攻击&#xf…

sysbench 命令:跨平台的基准测试工具

一、命令简介 sysbench 是一个跨平台的基准测试工具,用于评估系统性能,包括 CPU、内存、文件 I/O、数据库等性能。 ‍ 比较同类测试工具 bench.sh 在上文 bench.sh:Linux 服务器基准测试中介绍了 bench.sh 一键测试脚本,它对…

GAMES101(17~18节,物理材质模型)

材质 BRDF 材质:决定了光线与物体不同的作用方式 BRDF定义了物体材质,包含漫反射和镜面部分 BSDF (scattering散射) BRDF(reflect反射) BTDF 光线打击到物体上会向四面八方散射 反射 光线打击到物体上反射出去…

IIS开启后https访问出错net::ERR_CERT_INVALID

安装ArcGIS server和portal等,按照说明上,先开启iis,在安装server、datastore、portal、webadapter等,遇到一些问题: 问题1 访问http正常,访问https出错: 解决方案 从这里找到解决方案&…

【Android 源码分析】Activity生命周期之onPause

忽然有一天,我想要做一件事:去代码中去验证那些曾经被“灌输”的理论。                                                                                  – 服装…

通信工程学习:什么是CSMA/CA载波监听多路访问/冲突避免

CSMA/CA:载波监听多路访问/冲突避免 CSMA/CA(Carrier Sense Multiple Access/Collision Avoidance),即载波监听多路访问/冲突避免,是一种用于数据传输时避免各站点之间冲突的算法,尤其适用于无线局域网&…

2022年6月 Frontier 获得性能第一的论文翻译

为百万兆级加速架构做高性能 Linpack 优化 摘要 我们详细叙述了在 rocHPL 中做的性能优化,rocHPL 是 AMD 对 HPL 基准的开源实现,主要是针对节点进行优化的架构,是为百万兆级系统而设计的,比如:Frontier suppercomput…

深蕾半导体Astra™ SL1620详细介绍,嵌入式物联网处理器

一,SL1620是什么 Astra™ SL系列是深蕾半导体推出的高度集成的嵌入式物联网处理器SoC(System on Chip)系列产品,专为多模式消费者、企业和工业物联网工作负载而设计。SL1620是Astra™ SL系列中的一款成本和功耗优化的安全嵌入式So…

Windows 11 安装配置 Git 教程

目录 Git Windows 11 环境安装配置 Git Git Git是一个开源的分布式版本控制系统,由Linus Torvalds创建,用于有效、高速地处理从小到大的项目版本管理。Git是目前世界上最流行的版本控制系统,广泛应用于软件开发中。 以下是Git的一些关键特…

【C#】CacheManager:高效的 .NET 缓存管理库

在现代应用开发中,缓存是提升性能和降低数据库负载的重要技术手段。无论是 Web 应用、桌面应用还是移动应用,缓存都能够帮助减少重复的数据查询和处理,从而提高系统的响应速度。然而,管理缓存并不简单,尤其是当你需要处…

使用RestTemplate调用EMQX API查询MQTT客户端列表信息

项目中集成mqtt客户端查询功能,使用到了EMQX api-v5,具体步骤: 一、准备工作 首先在EMQX dashboard中添加API 密钥 填写密钥名称,点击确定,会生成API Key和Secret Key,保存起来备用。 二、配置文件 在…

AWS Network Firewall - IGW方式配置只应许白名单域名出入站

参考链接 https://repost.aws/zh-Hans/knowledge-center/network-firewall-configure-domain-ruleshttps://aws.amazon.com/cn/blogs/networking-and-content-delivery/deployment-models-for-aws-network-firewall/ 1. 创建防火墙 选择防火墙的归属子网(选择公有…

基于Hive和Hadoop的共享单车分析系统

本项目是一个基于大数据技术的共享单车分析系统,旨在为用户提供全面的单车使用信息和深入的出行行为分析。系统采用 Hadoop 平台进行大规模数据存储和处理,利用 MapReduce 进行数据分析和处理,通过 Sqoop 实现数据的导入导出,以 S…

【JavaEE】http/https 超级详解

🔥个人主页: 中草药 🔥专栏:【Java】登神长阶 史诗般的Java成神之路 🦊一.定义 HTTP(HyperText Transfer Protocol)即超文本传输协议,他是应用非常广泛的应用层协议,是…