Leetcode刷题营第三十三题:对称二叉树

101. 对称二叉树

给你一个二叉树的根节点 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 ismirrortree(struct TreeNode* p,struct TreeNode* q){
    if(p == NULL && q == NULL){
        return true;
    }
    if(!p || !q || p->val != q->val){
        return false;
    }
    return ismirrortree(p->left,q->right) && ismirrortree(p->right,q->left);
}

bool isSymmetric(struct TreeNode* root) {
    if(!root){
        return true;
    }
    return ismirrortree(root->left,root->right);
}

这道题利用前面我们做过的题目的思想,有时候它只给了一个接口,但并不意味着你不可以在该接口中调用其他接口。

好了,本期的内容就分享到这里了,谢谢大家的点赞和收藏!

相关推荐
罗小罗同学30 分钟前
安德森癌症中心发表SCOPE IO模型,实现了对罕见肿瘤帕博利珠单抗疗效的精准预测,在患者早期即可预判药效
人工智能·算法·医学图像处理·医学ai
变量未定义~40 分钟前
Tarjan算法-强连通分量、路径、出差
算法
geovindu1 小时前
CSharp: Iterative Algorithms
开发语言·后端·算法·c#·.net·迭代算法
雨落在了我的手上1 小时前
Java数据结构(六):链表的介绍
java·开发语言·数据结构
道影子1 小时前
《黄帝内经》021章|津凝精晶 沉降为患
人工智能·深度学习·神经网络·算法·机器学习
道影子2 小时前
《黄帝内经》022章|调和双旋 伏风自消
人工智能·深度学习·神经网络·算法·机器学习
Angle.寻梦2 小时前
数据结构--栈与队列
数据结构
吞下星星的少年·-·2 小时前
牛客技能树:一道GCD问题(排序,数论)
算法
热爱前端的小张2 小时前
第六章 图
数据结构
m沐沐2 小时前
【计算机视觉】人脸识别三大经典算法:LBPH、Eigenfaces、FisherFaces 原理与实战
图像处理·人工智能·深度学习·opencv·算法·机器学习·计算机视觉