LeetCode 101.对称二叉树

LeetCode101对称二叉树 算法特点及适用场景特点利用递归的思想巧妙地将判断二叉树是否对称的问题转化为比较对应子树是否对称相等的子问题,代码结构清晰简洁,逻辑上很符合二叉树这种具有递归结构的数据结构特点,易于理解和实现。通过层层递归比较节点值以及子树的对称性,能够准确地判断二叉树是否满足对称的性质。时间复杂度为 $O (n)`,在遍历二叉树节点判断对称性方面具有合理的效率表现,只要二叉树的节点数量在可接受范围内,都能较快地得出二叉树是否对称的结论。适用场景。 阅读详情
101.对称二叉树
题目:

在这里插入图片描述

思路:
  • 递归思路:
    • 镜像对称,就是从根节点依次往下
    • 比较左子树的左子树值是不是和右子树的右子树的值相等,并且左子树的右子树值是不是和右子树的左子树的值相等
    • 全部相等即可
/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode(int x) { val = x; }
 * }
 */
class Solution {
    public boolean isSymmetric(TreeNode root) {
        if (root == null){
            return true;
        }
        return judgeLeftRight(root, root);
    }

    public boolean judgeLeftRight(TreeNode left, TreeNode right) {
        if (left == null && right == null) {
            return true;
        }
        if (left == null || right == null) {
            return false;
        }
        return left.val == right.val && judgeLeftRight(left.left, right.right) && judgeLeftRight(left.right, right.left);
    }
}

在这里插入图片描述

力扣(LeetCode) 101: 对称二叉树 - 解法思路 给定一个二叉树的根节点root,检查它是否是轴对称的(即,围绕其中心镜像对称)。左子树是右子树的镜像反射对应节点具有相同的值结构是镜像的两种方法都实现了 O(n) 时间复杂度。递归解决方案通常因其简单性而更受欢迎。对称树要求左子树是右子树的镜像,这意味着比较left.left与以及left.right与right.left。 阅读详情

相关推荐

【简单】力扣算法题解析LeetCode101:对称二叉树

本文探讨了如何判断二叉树是否对称的问题。通过递归和迭代两种方法实现:递归法通过比较左右子树的镜像关系(左左对右右,左右对右左)实现高效判断,时间复杂度O(n);迭代法则利用队列按层比较对称节点。两种方法均需处理空节点和值不等的边界条件。递归法代码简洁,适合小规模树;迭代法避免栈溢出,适合大规模数据。附Java实现代码及LeetCode提交结果,展示了两种方法的时间/空间复杂度对比。

ylumwd的博客 454

LeetCode 101.对称二叉树(DFS、BFS)

给定一个二叉树,检查它是否是镜像对称的。

晴空๓ 5233

LeetCode——101,对称二叉树

/** * \* Created: liuhuichao * \* Date: 2019/8/22 * \* Time: 35:53 AM * \* Description: 对称二叉树 * 给定一个二叉树,检查它是否是镜像对称的。 * <p> * 例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 * <p> * 1 * / \ * ...

我们的征途是星辰大海 669

LeetCode 101 ----- 对称二叉树

LeetCode 101 ----- 对称二叉树 题目描述 给定一个二叉树,检查它是否是镜像对称的。 思路 **对称,可以看做镜像 根节点为 null,则为对称二叉树 如果两个数都是空树,算镜像 两个数一个为空,有个非空,则不是镜像 如果两个树都不为空 a)比较根节点是不是相同,不相同就不是镜像 b)递归比较子树,t1.left 和 t2.right , t1.right 和 t2.left 是...

lsy18392609095的博客 171

Python广度优先搜索BFS - 蓝桥13届省赛污染海域

请问这片N * M海域中有几块是没被污染的独立海域(没被污染的独立海域是指该块海域上下左右被已污染的海域包围,且N * M以外的海域都为已被污染的海域)有一片海域划分为N * M个方格,其中有些海域已被污染(用0表示),有些海域没被污染(用1表示)。第二行开始输入N行,每行M个数字(数字只能为1或者0,1表示没被污染的海域,0表示已被污染的海域)这块4 * 5的海域,有3块海域(绿色)没被污染,因为每一块的上下左右都被污染的海域包围。输出一个整数,表示N * M的海域中有几块是没被污染的独立海域。

m0_69865359的博客 272

【代码审计】RuoYi定时任务漏洞:从SQL注入到RCE的攻防演变

本文深入剖析了RuoYi框架定时任务模块从早期版本无校验到引入黑白名单机制,再到被组合利用实现RCE的完整漏洞演变过程。文章详细分析了SQL注入与定时任务功能结合导致的远程代码执行漏洞,并总结了代码审计与安全开发的核心要点,为开发者提供了重要的安全参考。

yellow的专栏 702

LeetCode 力扣 101. 对称二叉树

题目描述(简单难度) 判断一个二叉树是否关于中心轴对称。 解法一 和 100 题 判断两个二叉树是否相等其实是一样的思路,都是用某种遍历方法来同时遍历两个树,然后看是否对应相等。 这里的需要遍历的两个树就是左子树和右子树了。 这里的对应相等的话,因为判断左子树 A 和右子树 B 是否对称,需要判断两点。 A 的根节点和 B 的根节点是否相等 A 的左子树和 B 的右子树是否相等,同时 A 的右...

wind_liang的博客 906

Decoder如何工作、Transformer如何训练、以及exposure bias问题

1、结合图文描述Decoder中各个模块是什么,以及是如何工作的。2、transformer是如何训练的。3、exposure bias问题造成的原因及解决方法

m0_59113542的博客 3346

101. 对称二叉树【 力扣(LeetCode) 】

给你一个二叉树的根节点 root , 检查它是否轴对称。进阶:你可以运用递归和迭代两种方法解决这个问题吗?

yyh520025的博客 1234

『杭电1199』Color the Ball

Problem Description There are infinite balls in a line (numbered 1 2 3 ....), and initially all of them are paint black. Now Jim use a brush paint the balls, every time give two integers a b and follow by a char 'w' or 'b', 'w' denotes the ball from a to

漠宸离若的博客 498

在 SAP 世界里拥抱非 SAP 技术:一名 ABAP 开发者的成长路径与实战方法论

那段时间非常煎熬,但它带来的回报也很真实:你会更尊重“可观测性”的价值,也会更愿意在 SAP 场景里把日志、追踪、断言、隔离测试做扎实。解决这类问题,靠的并不是某个神奇的 SAP 函数,而是跨栈的工程设计:接口要有业务幂等键,SAP 侧要有落库与锁策略,返回要有可识别的状态码,异常要能回放,补偿要有可追踪的工单或队列。这套体系吸引我的地方,在于它更贴近真实业务:客户要的往往不是“能打印”,而是“能规范地输出”,包括版式、字体、条码、二维码、电子签章位置、分页规则、多语言、合规水印、可回写的交互字段等。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 170

瑞_力扣LeetCode_101. 对称二叉树

本文章为瑞_系列专栏之《刷题》的力扣LeetCode系列,主要以力扣LeetCode网的题进行解析与分享。力扣LeetCode_101. 对称二叉树

阿瑞——从事Java后端,喜欢研读源码、自研框架、分享经验 1390

SAP 固定资产采购简介

SAP 固定资产采购是指企业通过采购流程获取长期使用并记录为固定资产的物品。固定资产是企业为长期使用而购置的资产,如机器设备、办公设备、建筑物、车辆等,通常这些资产的使用期限较长,并且在资产负债表上记录。在SAP系统中,固定资产采购流程通常与物料管理(MM)模块和固定资产管理(FI-AA)模块相结合。这个过程涉及从需求的提出、采购订单的创建,到货物接收、发票校验和资产激活的多个步骤。

我小时候很黑的博客 1731

Leetcode 101. 对称二叉树

Leetcode 101. 对称二叉树1、问题分析2、问题解决3、总结 1、问题分析 题目链接:https://leetcode-cn.com/problems/symmetric-tree/   本质上就是一个二叉树的深度优先搜索问题。代码我已经进行了详细的注释,理解应该没有问题,读者可以作为参考,如果看不懂(可以多看几遍),欢迎留言哦!我看到会解答一下。 2、问题解决   笔者以C++方式解决。 #include "iostream" using namespace std; #include "a

珍惜 8862

YOLO26全新改进 | 最全损失函数改进篇 | SIoU 、WIoU、GIoU、DIoU、EIOU、CIoU, InnerIoU、InnerSIoU、InnerWIoU、FocusIoU等损失函数

🔥本文详细介绍了如何修改YOLO26中的损失函数。首先提供了完整的损失函数核心代码,包括WIoU_Scale类和各种IoU计算方法。然后分三步指导修改:1)替换metrics.py中的bbox_iou方法;2)修改loss.py中的iou计算代码;3)更新tal.py中的相关代码。文中特别强调了修改损失函数应在模型结构调整后使用,并提供了多种IoU损失函数的参数配置建议,包括SIoU、WIoU、GIoU等,可根据实际需求灵活选择搭配使用。

Ai缝合怪、助力小伙伴高效发论文 455

手把手教你学simulink(43.2)--光伏发电场景示例:基于Simulink开发一个光伏发电系统仿真模型:采用神经网络控制策略进行优化

需求分析光伏发电系统(Photovoltaic System, PV)是将太阳能转换为电能的重要手段,广泛应用于分布式发电、并网发电和离网供电等领域。随着光伏技术的发展,如何提高光伏发电系统的效率和稳定性成为研究的重点。传统的控制策略(如PID控制器)虽然简单易实现,但在复杂工况下(如光照强度变化、温度波动等)难以达到最优性能。因此,引入先进的控制策略,如神经网络控制(Neural Network Control, NNC),可以显著提升系统的响应速度和鲁棒性。

MHD0815的博客 439

力扣 101 对称二叉树【递归三步法】

力扣 101 对称二叉树【递归三步法】 文章目录力扣 101 对称二叉树【递归三步法】全部刷题与学习记录原题目考查知识点自己的第一遍解法好的解法 全部刷题与学习记录 【C++刷题学习笔记目录】 【C++百万并发网络通信-笔记目录】 原题目 题目地址:101. 对称二叉树 给定一个二叉树,检查它是否是镜像对称的。 例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \ 3 4 4 3 但是下面这个 [1,2,2,null,3,null,3

日月既往,不可复追 485

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

【力扣】101.对称二叉树

力扣 101题对称二叉树 c++解法

Father_Of_Soft的博客 315

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

《LeetCode力扣练习》第101题 对称二叉树 Java

《LeetCode力扣练习》第101题 对称二叉树 Java 一、资源 题目: 给你一个二叉树的根节点 root , 检查它是否轴对称。 示例 1: 输入:root = [1,2,2,3,4,4,3] 输出:true 示例 2: 输入:root = [1,2,2,null,3,null,3] 输出:false 提示: 树中节点数目在范围 [1, 1000] 内 -100 <= Node.val <= 100 进阶:你可以运用递归和迭代两种方法解决这个问题吗? 来源:力扣(LeetC

XRT_knives的博客 297

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

LeetCode 101. 对称二叉树

🌈🌈😄😄 欢迎来到茶色岛独家岛屿,本期将为大家揭晓LeetCode 101. 对称二叉树,做好准备了么,那么开始吧。 🌲🌲🐴🐴

weixin_62275996的博客 761

LeetCode 101对称二叉树

LeetCode 101对称二叉树 题目简述:给定一个二叉树,检查它是否是镜像对称的。 二叉树 [1,2,2,3,4,4,3] 是对称的,但是 [1,2,2,null,3,null,3] 则不是镜像对称的 思路:递归O(n) 两个子树互为镜像当且仅当: 两个子树的根节点值相等; 第一棵子树的左子树和第二棵子树的右子树互为镜像,且第一棵子树的右子树和第二棵子树的左子树互为镜像; class Solution { public: bool cmp(TreeNode* p, TreeN

XBlog 168

LeetCode101(力扣101):对称二叉树 C++

101.对称二叉树 给定一个二叉树,检查它是否是镜像对称的。 例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \ 3 4 4 3 但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ 3 3 进阶: 你可以运用递归和迭代两种方法解决这个问题吗? 我提交的代码 class Solution { public: bool isDCtre

VegetableGirl的博客 507

LeetCode第101题_对称二叉树

给你一个二叉树的根节点root,检查它是否轴对称。

qq_40263592的博客 1028

Leetcode101:对称二叉树

Java,若左子树的左孩子和右子数的右孩子不相等或左子树的右孩子和右子数的左孩子不相等,就返回false。给你一个二叉树的根节点 root , 检查它是否轴对称。

qq_52726736的博客 255

101. 对称二叉树 - 力扣(LeetCode)

和100题一样的思想,只不过传入方式不同,同时传入的left和right总是轴对称的,和100题处于同一个位置一样。

xxm919的博客 141

力扣 101. 对称二叉树

以上就是今天要讲的内容,本文简单介绍了 力扣 101. 对称二叉树 的解题思路,在力扣以及牛客网中还会有很多类似的题目,今后将会持续更新,敬请关注!

m0_73724954的博客 184
上一篇: LeetCode 88.合并两个有序数组
下一篇: LeetCode 104. 二叉树的最大深度
wxianyou
博客等级 码龄9年 1粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值