C语言 | Leetcode C语言题解之第450题删除二叉搜索树中的节点

news/2024/12/22 1:03:14/

题目:

题解

struct TreeNode* deleteNode(struct TreeNode* root, int key){struct TreeNode *cur = root, *curParent = NULL;while (cur && cur->val != key) {curParent = cur;if (cur->val > key) {cur = cur->left;} else {cur = cur->right;}}if (!cur) {return root;}if (!cur->left && !cur->right) {cur = NULL;} else if (!cur->right) {cur = cur->left;} else if (!cur->left) {cur = cur->right;} else {struct TreeNode *successor = cur->right, *successorParent = cur;while (successor->left) {successorParent = successor;successor = successor->left;}if (successorParent->val == cur->val) {successorParent->right = successor->right;} else {successorParent->left = successor->right;}successor->right = cur->right;successor->left = cur->left;cur = successor;}if (!curParent) {return cur;} else {if (curParent->left && curParent->left->val == key) {curParent->left = cur;} else {curParent->right = cur;}return root;}
}

http://www.ppmy.cn/news/1534860.html

相关文章

git(1) -- 环境配置

1. 配置文件 编辑~/.gitconfig文件,内容如下。 [user]email xflming163.comname xflm [core]editor vim [color]diff autostatus autobranch autoui true [commit]template /home/xflm/configuser/git-commit.template [diff]tool bc4 [difftool]prompt …

无环SLAM系统集成后端回环检测模块(loop):SC-A-LOAM以及FAST_LIO_SLAM

最近在研究SLAM目标检测相关知识,看到一篇论文,集成了SC-A-LOAM作为后端回环检测模块,在学习了论文相关内容后决定看一下代码知识,随后将其移植,学习过程中发现我找的论文已经集成了回环检测模块,但是我的另…

掌握C#核心概念:类、继承、泛型等

C# 是一门功能强大且灵活的面向对象编程语言,它结合了许多现代编程语言的特点和特性。无论你是编程新手,还是有经验的开发者,理解C#中的核心概念都是非常重要的。本文将介绍C#中的类与对象、构造函数和析构函数、方法的重载与重写、继承与多态…

【理论】负载均衡

目录 1. 定义2. 主要作用3. 实现方法4. 实现原理 1. 定义 负载均衡(Load Balancing)将网络流量、请求等输入分发到后端服务器,为后端服务器提供负载均衡,实现高可用和容错。 2. 主要作用 1. 高并发 通过将请求均匀分配到多个服务…

【分布式微服务云原生】Redis投票延迟深度解析:优化集群稳定性的关键策略

Redis投票延迟深度解析:优化集群稳定性的关键策略 摘要: 在Redis集群环境中,网络分区和节点故障是不可避免的问题。本文将详细探讨Redis的投票延迟机制,解释其在集群故障转移过程中的作用,并提供实用的配置建议。通过…

“大数据+高职”:VR虚拟仿真实训室的发展前景

随着信息技术的迅猛发展,大数据技术与虚拟现实(VR)的融合正在为高等教育,尤其是高等职业教育(高职)带来革命性的变革。VR虚拟仿真实训室作为这一技术融合的典型应用,正逐步展现其在提升教育质量…

uniapp 小程序,登录上传头像昵称页面处理步骤

登录上传头像 成功前阻塞 处理成功后才跳转回 游戏页面 为了能看见最新上传的头像显示,处理方式是 重新封装base64处理方法为promise 这样可以用await等待,请求后台的方法也等待,等待处理完成后调用跳转页面方法,同时信息上传完成…

智慧水务可视化:高效管理水资源

利用图扑先进的可视化技术,实现对水资源的实时监控与高效管理,提高水务工作的透明度和决策效率,促进水资源的可持续利用。