数据结构:(LeetCode101)对称二叉树

给你一个二叉树的根节点 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

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

cpp 复制代码
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;
    }
    return isSameTree(p->left,q->right)&&isSameTree(p->right,q->left);
}

bool isSymmetric(struct TreeNode* root) {
   return isSameTree(root->left,root->right);
};
相关推荐
流年如夢14 小时前
排序算法详解
数据结构·算法·排序算法
z2005093015 小时前
今日算法(二叉树)
数据结构·c++·算法
故事和你9115 小时前
洛谷-【图论2-2】最短路1
开发语言·数据结构·c++·算法·动态规划·图论
Simple-Soft15 小时前
指针的高级应用与技巧 - C语言的灵魂
c语言·数据结构·算法
Controller-Inversion16 小时前
23. 合并 K 个升序链表
数据结构·链表
Mr_pyx16 小时前
面试题记录
jvm·数据结构·算法·spring·mybatis
努力努力再努力wz16 小时前
【C++高阶数据结构系列】:时间轮定时器详解:原理分析与代码实现,带你从零手撕时间轮!(附时间轮的实现源码)
c语言·开发语言·数据结构·c++·qt·算法·ui
iiiiyu17 小时前
⾯向对象和集合编程题
java·大数据·开发语言·数据结构·编程语言
YuanDaima204817 小时前
贪心算法基础原理与题目说明
数据结构·人工智能·python·算法·贪心算法·手撕代码