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

Leetcode226. 翻转二叉树

文章目录

  • 题目介绍
  • 题目分析
  • 解题思路
    • 边界条件:节点为空时返回空
    • 子问题:交换左右子节点
  • 整体代码

题目介绍

在这里插入图片描述

题目分析

题目要求我们将树中每个节点的左右子节点全部交换,最后返回交换后的树的根节点。

解题思路

这题是比较常见的递归,直接找边界条件和子问题。

边界条件:节点为空时返回空

 if(root==NULL)
    return NULL;

子问题:交换左右子节点


      struct TreeNode*tmp=root->right;
        root->right=root->left;
        root->left=tmp;
    invertTree(root->left);
     invertTree(root->right);

整体代码

struct TreeNode* invertTree(struct TreeNode* root) {
 if(root==NULL)
    return NULL;

      struct TreeNode*tmp=root->right;
        root->right=root->left;
        root->left=tmp;
    invertTree(root->left);
     invertTree(root->right);
     return root;
}

http://www.kler.cn/a/160948.html

相关文章:

  • sql server cdc漏扫数据
  • 芯片详细讲解,从而区分CPU、MPU、DSP、GPU、FPGA、MCU、SOC、ECU
  • 【数据结构】航班查询系统:链表的实际运用
  • openai swarm agent框架源码详解及应用案例实战
  • 2、蓝牙打印机点灯-GPIO输出控制
  • 51单片机——定时器中断(重点)
  • Python语言基础知识(一)
  • 第三方实验室LIMS管理系统源码,asp.net LIMS源码
  • java实现Modbus通信
  • 文心一言大模型应用开发入门
  • 外汇市场中的多头和空头究竟是什么?如何通过K线图来辨别它们呢?
  • 快速排序并不难
  • 0008Java程序设计-ssm校友录网站小程序
  • docker安装配置prometheus+node_export+grafana
  • 香港科技大学广州|机器人与自主系统学域博士招生宣讲会—北京专场!!!(暨全额奖学金政策)
  • 【微信小程序开发】小程序的事件处理和交互逻辑(最详细)
  • 前端数据加密相关问题
  • LLM之RAG实战(一):使用Mistral-7b, LangChain, ChromaDB搭建自己的WEB聊天界面
  • Qt之基于QMediaPlayer的音视频播放器(支持常见音视频格式)
  • k8s之Pod常用命令详解、镜像拉取策略(imagePullPolicy)
  • 学生成绩管理系统(Java)
  • 深入React Flow Renderer(二):构建拖动操作栏
  • 什么是SPA(Single Page Application)?它的优点和缺点是什么?
  • Golang 原生Rpc Server实现
  • TypeScript中泛型函数
  • 在Azure虚拟机中使用XDP Native模式