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

初阶数据结构习题【16】(5二叉树)——101. 对称二叉树

前置:相同的树

1. 题目描述

力扣OJ链接——101对称二叉树

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

例 1:

在这里插入图片描述
输入:root = [1,2,2,3,4,4,3]
输出:true

示例 2:

在这里插入图片描述
输入:root = [1,2,2,null,3,null,3]
输出:false

2. 思路

这个和我们之前判断是否是同一颗子树是有关联的,是否对称,就是根和根比较,左子树和右子树比较是否相等。
递归下去继续比较。

3. 代码实现

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     struct TreeNode *left;*     struct TreeNode *right;* };*/bool isSameTree(struct TreeNode* p, struct TreeNode* q) {if (p == NULL && q == NULL)return true;// 其中一个为空if (p == NULL || q == NULL)return false;// 都不为空if (p->val != q->val)return false;// p和q的值相等,分别比较左子树和右子树 //==这里注意,比较对称,所以是左子树的左子树和右子树的右子树,//==左子树的右子树和右子树的左子树比较!//==和我们判断两颗子树是否相同这里是进行了修改的!return isSameTree(p->left, q->right) && isSameTree(p->right, q->left);
}bool isSymmetric(struct TreeNode* root) {if (root == NULL) {return true;}return isSameTree(root->left, root->right);
}

在这里插入图片描述

相关文章:

  • IDEA中配置HTML和Thymeleaf热部署的步骤
  • Springboot度假村住宿服务平台95i1e(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • 从“分散开发”到“智能协同” —— Gitee 如何赋能河南农担构建金融级研发体系?
  • 【docker n8n】本地台式机A部署后,其他电脑B、C如何访问n8n?
  • 记录win10/win11安装docker desktop全过程
  • 漫画Android:APK是怎样安装的?
  • Android第十七次面试总结(Java数据结构)
  • Android --- Handler的用法,子线程中怎么切线程进行更新UI
  • ffmpeg windows 32位编译
  • SpringBoot基于RabbitMQ实现异步请求处理
  • 鹰盾加密器的超混沌加密原理深度解析:从理论基础到视频应用
  • 第十四届蓝桥杯_省赛B组(C).冶炼金属
  • window7 wpf程序打不开问题排查及处理
  • 1.0 ROS1安装及环境配置
  • linux之kylin系统nginx的安装
  • Vue 指令详解:概念与作用
  • CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
  • Nginx攻略
  • dedecms 织梦自定义表单留言增加ajax验证码功能
  • 解锁 Nginx Stream 代理—全面掌握 ngx_stream_proxy_module
  • 学做网站要多久/百度认证官网
  • 南宁市住房和城乡建设局/seo怎么优化方案
  • 六安网络推广/优化一下
  • 软件最全的应用商店/论坛seo设置
  • 版式设计网站/水果网络营销策划书
  • 网站的c4d动画是怎么做的/怎么下载百度