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

05 对称二叉树

101. 对称二叉树

简单

相关标签

premium lock icon相关企业

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

示例 1:

img

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

示例 2:

img

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

提示:

  • 树中节点数目在范围 [1, 1000]
  • -100 <= Node.val <= 100

进阶:你可以运用递归和迭代两种方法解决这个问题吗?


class Solution {
public:bool compare(TreeNode* left, TreeNode* right) {// 首先排除空节点的情况if (left == NULL && right != NULL) return false;else if (left != NULL && right == NULL) return false;else if (left == NULL && right == NULL) return true;// 排除了空节点,再排除数值不相同的情况else if (left->val != right->val) return false;// 此时就是:左右节点都不为空,且数值相同的情况// 此时才做递归,做下一层的判断bool outside = compare(left->left, right->right);   // 左子树:左、 右子树:右bool inside = compare(left->right, right->left);    // 左子树:右、 右子树:左bool isSame = outside && inside;                    // 左子树:中、 右子树:中 (逻辑处理)return isSame;}bool isSymmetric(TreeNode* root) {if (root == NULL) return true;return compare(root->left, root->right);}
};

通过这道题就可以知道,确定好单层递归的过程和递归出口即可写出正确的代码,没必要死磕所有遍历过程

  • 这道题比较的是根节点的两个子树是否是相互翻转的

  • 我们可以看出使用的遍历方式,左子树左右中,右子树右左中,所以我把这个遍历顺序也称之为“后序遍历”(尽管不是严格的后序遍历)

http://www.jsqmd.com/news/798029/

相关文章:

  • AcceRL框架:异步强化学习优化与硬件加速实践
  • HS2汉化补丁终极指南:3步轻松搞定Honey Select 2中文界面
  • 别再只调OpenCV了!深入Sobel算子:从数学推导到C++手写实现(对比FPGA方案)
  • 开源安全守卫OpenClaw:一体化安全运营平台架构与实战部署
  • 5分钟解决经典游戏兼容问题:DDrawCompat让你的老游戏在现代Windows上重生!
  • Windows Defender Remover:彻底移除Windows安全组件,实现系统性能加速30%
  • OpenEuler 22.03 LTS 图形界面安装踩坑实录:从网络检查到GDM修复,一篇搞定
  • 免费AI图像修复神器:Real-ESRGAN-GUI终极使用指南
  • 科技与科学领域重点新闻摘要-2026年5月11日
  • OpenDRIVE路网导入Unity的避坑指南:从Bezier曲线生成到多车道纹理渲染的实战复盘
  • 珠海金湾管道疏通 马桶疏通 地漏疏通 洗菜池疏通 清理化粪池30分钟快速上门 - 企业推荐官【官方】
  • 如何快速掌握HMCL启动器:从新手到专家的完整社区指南
  • AI辅助编程实战:用Cursor工具复刻2048游戏全流程解析
  • 社会网络分析(五) | 实战Gephi进阶布局,优化小说社群可视化
  • 2026年5月 最新天津防水维修公司推荐 - 企业推荐官【官方】
  • 暗黑破坏神2存档编辑器:5分钟掌握你的游戏命运
  • C# virtual关键字:从“虚拟”到“真实”的继承艺术
  • SLM-MCP-Hub:构建标准化AI工具集成的中心化枢纽
  • LumenPnP真空系统技术深度解析:架构设计与性能优化实战
  • Gerbil:云原生时代Go语言轻量级Web框架的设计与实践
  • Simulink进阶:用S-Function Builder封装你的C语言电机控制算法(以MTPA为例)
  • 别再傻傻分不清了!VB、VBS、VBA到底该用哪个?从Excel自动化到网页脚本的实战选择指南
  • 如何构建i茅台自动化预约系统:Campus-imaotai完整技术指南
  • 2025-2026年电商园区核定公司联系电话推荐:正规机构与联系指引 - 品牌推荐
  • 智能中文文献管理解决方案:Zotero茉莉花插件让学术研究效率提升90%
  • ALLHiC实战笔记:从零搭建到结果可视化,一份给基因组组装新人的保姆级避坑手册
  • 51单片机光照控制进阶:EEPROM存储校准与状态机按键设计详解
  • AI+ERP融合中的那些坑:企业智能化升级前必须看清的风险(AI+ERP系列-2)
  • Ubuntu 20.04 进程占用 100% CPU 如何使用 perf 定位热点函数?
  • 避开这些坑!用STM32 CubeMX配置SPWM生成时,死区时间与互补输出怎么设才对?