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

二叉树-226.翻转链表-力扣(LeetCode)

一、题目解析

翻转可以理解为树的左右子树交换,从根到叶子节点,但是这里交换的是链接的指针,而不是单纯的交换值,当出现nullptr时,也是可以交换链接的,交换值的话就不行了。

二、算法原理

依旧的递归,但是我们需要更改指针的链接,所以我们需要保存递归时左右指针,用于交换链接。

根据递归顺序,先将左树交换,然后交换右数,最后将根的链接改变,原来的左变为翻转后的右,右边同理。

三、代码示例

class Solution {
public:TreeNode* invertTree(TreeNode* root) {if(root == nullptr) return nullptr;TreeNode* left = invertTree(root->left);TreeNode* right = invertTree(root->right);root->left = right;root->right = left;return root;}
};

 

四、递归展开图

 看到最后,如果对您有所帮助,还请点赞、收藏和关注,点点关注不迷路,我们下期再见!

 

http://www.dtcms.com/a/238559.html

相关文章:

  • Argo CD 入门 - 安装与第一个应用的声明式同步
  • OC—UI学习-2
  • 全志v853跑通rtsp sample
  • 阿里云Alibaba Cloud安装Docker与Docker compose【图文教程】
  • 创新滑模观测器设计:改进趋近律与切换函数的永磁同步电机无传感器控制
  • 65、.NET 中DllImport的用途
  • React、Git、计网、发展趋势等内容——前端面试宝典(字节、小红书和美团)
  • Python环境搭建:pyenv-win的使用指南
  • leetcode56-合并区间
  • 如何将淘宝店铺商品搬到抖店去?利用 API 实现淘宝店铺商品到抖店的高效迁移
  • 分库分表的取舍
  • 机器学习算法_决策树
  • 【Java学习笔记】BigInteger 和 BigDecimal 类
  • Windows开机自动启动中间件
  • Python应用变量与数据类型
  • Redis : Hash形式
  • Linux68 FTP 测试 上传下载
  • 【PCIe总线】-- inbound、outbound配置
  • LSTM-SVM多变量时序预测(Matlab完整源码和数据)
  • Django知识-视图
  • uni-app学习笔记三十--request网络请求传参
  • uni-app学习笔记二十四--showLoading和showModal的用法
  • 基于Python学习《Head First设计模式》第十章 状态模式
  • Vulkan 3D Tiles渲染器开发笔记1-脚手架搭建
  • 时间序列预测的机器学习方法:从基础到实战
  • 材料力学速通
  • 设置QDialog的setModal(true)对show()无法阻塞
  • Elasticsearch从安装到实战、kibana安装以及自定义IK分词器/集成整合SpringBoot详细的教程ES(三)
  • 从 Kubernetes 学习大规模 Go 项目架构
  • 初级程序员入门指南