【Leetcode】对称二叉树||递归(击败100%)

news2024/9/26 0:29:15

step by step.

题目:

给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。

示例 1:

输入:root = [4,2,7,1,3,6,9]
输出:[4,7,2,9,6,3,1]

示例 2:

输入:root = [2,1,3]
输出:[2,3,1]

示例 3:

输入:root = []
输出:[]

代码:

/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public TreeNode invertTree(TreeNode root) {
        if(root==null){
            return null;
        }
        else swap(root);
        if(root.left!=null){
            invertTree(root.left);
        }
        if(root.right!=null){
            invertTree(root.right);
        }
        return root;
    }
    public TreeNode swap(TreeNode root){
        if(root.left==null&&root.right==null)
            return root;
        if(root.left==null){
            root.left=root.right;
            root.right=null;
        }else if(root.right==null){
            root.right=root.left;
            root.left=null;
        }else{
            TreeNode p = root.left;
            root.left=root.right;
            root.right=p;
        }
        return root;
    }
}

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

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

相关文章

lc2536.子矩阵元素加1

暴力解法:直接按照题目所示在矩阵的相应位置加一 时间复杂度:O(n2 * queries.length) 空间复杂度:O(1) 二维差分:创建二维差分数组,通过对差分数组的修改来影响原来的数组,最后还原 时间复杂度&#x…

FcaNet: Frequency Channel Attention Networks

FcaNet: Frequency Channel Attention Networks Abstract预备知识GAPDTC(离散余弦变换) 本文methodRevisiting DCT and Channel AttentionChannel Attention Multi-Spectral Channel AttentionMulti-Spectral Channel Attention ModuleCriteria for Choo…

超导材料LK-99烧制工艺中高真空度及其气氛环境控制的解决方案

摘要:根据近期LK-99超导材料研究报道,我们分析此材料制备采用了真空烧结工艺。由于目前大部分复现研究所用的真空烧结技术和设备都非常简陋,使得LK-99的复现性很差。为此我们提出了真空度准确控制解决方案,其目的第一是实现烧结初…

排序(快速排序,归并排序,插入排序,选择排序,冒泡排序,希尔排序,堆排序)

给定你一个长度为 n 的整数数列。 请你对这个数列按照从小到大进行排序。 并将排好序的数列按顺序输出。 输入格式 输入共两行,第一行包含整数 n 。 第二行包含 n 个整数(所有整数均在 1∼109 范围内),表示整个数列。 输…

【深度学习MOT】SMILEtrack SiMIlarity LEarning for Multiple Object Tracking,论文

论文:https://arxiv.org/abs/2211.08824 文章目录 AbstractIntroduction2. 相关工作2.1 基于检测的跟踪2.1.1 检测方法2.1.2 数据关联方法 2.2 基于注意力的跟踪 3. 方法3.1 架构概述3.2 用于重新识别的相似性学习模块(SLM) Experimental Res…

【Docker晋升记】No.2 --- Docker工具安装使用、命令行选项及构建、共享和运行容器化应用程序

文章目录 前言🌟一、Docker工具安装🌟二、Docker命令行选项🌏2.1.docker run命令选项:🌏2.2.docker build命令选项:🌏2.3.docker images命令选项:🌏2.4.docker ps命令选项…

上篇文章viewerjs(npm包补丁)的错误更正。(npm补丁本地没问题,流水线打包要没效果,要么报错)

1、上篇文档的包补丁在本地使用没有问题,并且同事拉代码后也会自动同步npm_modules,也没有问题 2、问题出现在打包上,我这边的项目是用teambition上的飞流设置的流水线来进行打包的,里面用到了两个指令 yarn install npm run bu…

学习左耳听风栏目90天——第二天 2/90(学习左耳朵耗子的工匠精神,对技术的热爱)【程序员如何用技术变现(上)】

总结: 要去经历大多数人经历不到的,要把学习时间花在那些比较难的地方。要写文章就要写没有人写过的,或是别人写过,但我能写得更好的。更重要的是,技术和知识完全是可以变现的。学好英文,看技术文档 程序员…

解决idea编辑application.yml文件或properties文件没有提示问题

注意:这里说的没有提示,是针对application.properties和application.yml文件 解决办法:在idea的插件面板中,禁用或卸载 wl Spring Assistant插件即可解决问题。

python技术栈 之 单元测试中mock的使用

一、什么是mock? mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法。 二、mock的作用 特别是开发过程中上下游未完成的工序导致当前无法测试,需要虚拟某些特定对象…

Java基础入门篇——While循环(十二)

目录 一、循环结构语句 二、while循环语句 三、do-while循环语句 四、break使用 一、循环结构语句 在实际生活中经常会将同一件事情重复做很多次。例如,在做眼保健操的第四节轮刮眼眶时,会重复刮眼眶的动作:打乒乓球时,会重复…

npm ERR! code ERESOLVEnpm ERR! ERESOLVE unable to resolve dependency tree

拉取项目到本地 执行 npm install 报错 遇到这个问题首先确认的就是版本是不是太高了,降一下版本。或者通过yarn命令替代npm install命令安装,同理,启动也可以采用yarn dev 启动代替npm run dev 下面教大家用一个NVM工具,这个工…

Linux基础与应用开发系列七:一切皆文件

Linux内核 屏蔽硬件区别,把所有的硬件设备抽象成文件,提供统一的接口给用户使用。 虚拟文件系统 抽象层,对文件的访问实际上使对抽象层的访问。 抽象对象:封装了底层读写细节,使用c语言的多态来实现具体文件系统系统…

乐鑫首创|使用 ESP RainMaker® 私有云定制 Matter 生态

ESP RainMaker 是乐鑫的 AIoT 云平台,支持客户自主部署私有物联网云,从而全面掌握数据所有权和管理权,实现定制功能与服务。ESP RainMaker 云后端采用 AWS 无服务器架构,拥有开源的 iOS 和 Android 移动端 APP、第三方语音助手集成…

Java—IO 流

Java—IO 流 🔍文件创建文件获取文件相关信息目录相关操作 🔍IO 流理解流与文件流的分类FileInputStreamFileOutputStream文件拷贝FileReaderFileWriter节点流与处理流类型 BufferedReaderBufferedWriterBufferedInputStream BufferedOutputStream对象处…

erp与crm的区别有哪些呢?两者之间有什么联系?

阅读本文您可以了解:1、crm系统的功能;2、erp系统的功能;3、crm系统和erp系统的区别 一、crm系统是什么 CRM系统是客户关系管理系统的缩写。它是一种用于帮助企业有效管理与客户关系相关的信息、活动和数据的软件工具或平台。 举个例子&…

在服务器上搭建gitlab

目录 1.在服务器上下载gitlab 2.编辑站点位置 3.重载配置 4.访问gitlab 最终效果展示: 官方文档: 安装部署GitLab服务 1.在服务器上下载gitlab wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.9.0-ce.0.el7.x86_64.r…

lombok 因 idea版本过高不可用

报错: 解决: 添加配置: -Djps.track.ap.dependenciesfalse

信创环境下 FTP如何进行国产化替代?

一、政策驱动,倡导自主、创新、协同 信创,即信息技术应用创新产业,其是数据安全、网络安全的基础,也是新基建的重要组成部分。为打破国外巨头的垄断,解决核心技术关键环节“卡脖子”问题,在核心芯片、基础…

电子保险丝

TPS2660 具有集成输入反极性保护功能的 4.2V 至 60V、150mΩ、0.1A 至 2.23A 电子保险丝 电流监测,故障输出,反向电流始终阻断,反极性保护 29元 TPS2640 具有集成反向输入极性保护功能的 42V、2A 工业电子保险丝 17元 MAX17561AUD 40V&…