当前位置: 首页 > news >正文

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

题目:

题解:

class Solution {public TreeNode deleteNode(TreeNode root, int key) {TreeNode cur = root, curParent = null;while (cur != null && cur.val != key) {curParent = cur;if (cur.val > key) {cur = cur.left;} else {cur = cur.right;}}if (cur == null) {return root;}if (cur.left == null && cur.right == null) {cur = null;} else if (cur.right == null) {cur = cur.left;} else if (cur.left == null) {cur = cur.right;} else {TreeNode successor = cur.right, successorParent = cur;while (successor.left != null) {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 == null) {return cur;} else {if (curParent.left != null && curParent.left.val == key) {curParent.left = cur;} else {curParent.right = cur;}return root;}}
}
http://www.lryc.cn/news/452004.html

相关文章:

  • 【CViT】Deepfake Video Detection Using Convolutional Vision Transformer
  • 安卓主板_MTK4G/5G音视频记录仪整机及方案定制
  • Qt 教程全集目录公布(方便查阅)
  • 云计算SLA响应时间的matlab模拟与仿真
  • ARTS Week 42
  • 10.2学习
  • 【数一线性代数】021入门
  • (k8s)kubernetes中ConfigMap和Secret
  • stm32四足机器人(标准库)
  • 基于Hive和Hadoop的共享单车分析系统
  • 基于SSM和vue的机票订购管理系统
  • 【rCore OS 开源操作系统】Rust 练习题题解: Enums
  • VPN简述
  • 【Kubernetes】常见面试题汇总(四十九)
  • 常见排序算法以及冒泡排序的基础使用方法
  • 【网络安全】Cookie与ID未强绑定导致账户接管
  • Ansible Playbook原理与实践(Principles and Practice of Ansible Playbook)
  • 解决OpenCV保存视频 视频全部为绿色的bug
  • 手机使用指南:如何在没有备份的情况下从 Android 设备恢复已删除的联系人
  • TS系列(6):函数
  • 网盘能否作为FTP替代产品?企业该如何进行FTP国产化替代?
  • Python操作MongoDB
  • Redis --- 第二讲 --- 特性和安装
  • 基于单片机的两轮直立平衡车的设计
  • 828华为云征文|部署个人知识管理系统 SiyuanNote
  • MATLAB中pcg函数用法
  • Veritus netbackup 管理控制台无法连接:未知错误
  • 安全中心 (SOC) 与 网络运营中心 (NOC)
  • WPS使用越来越卡顿
  • 吴恩达深度学习笔记:卷积神经网络(Foundations of Convolutional Neural Networks)2.5-2.6