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);
}

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

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

相关推荐
legendary_bruce3 小时前
【22-决策树】
算法·决策树·机器学习
艾伦~耶格尔4 小时前
【数据结构进阶】
java·开发语言·数据结构·学习·面试
max5006004 小时前
基于桥梁三维模型的无人机检测路径规划系统设计与实现
前端·javascript·python·算法·无人机·easyui
闪电麦坤955 小时前
数据结构:N个节点的二叉树有多少种(Number of Binary Trees Using N Nodes)
数据结构·二叉树·
快去睡觉~6 小时前
力扣400:第N位数字
数据结构·算法·leetcode
qqxhb7 小时前
零基础数据结构与算法——第七章:算法实践与工程应用-搜索引擎
算法·搜索引擎·tf-idf·倒排索引·pagerank·算法库
gzzeason8 小时前
LeetCode Hot100:递归穿透值传递问题
算法·leetcode·职场和发展
汤永红8 小时前
week1-[循环嵌套]画正方形
数据结构·c++·算法
pusue_the_sun8 小时前
数据结构——顺序表&&单链表oj详解
c语言·数据结构·算法·链表·顺序表
yi.Ist9 小时前
图论——Djikstra最短路
数据结构·学习·算法·图论·好难