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

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

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

相关推荐
小李独爱秋3 分钟前
计算机网络经典问题透视:漏桶管制器的工作原理是怎么样的?
数据结构·计算机网络·算法·信息与通信·流量控制·漏桶管制器
Codeking__4 分钟前
C++20的consteval和constinit(接C++11的constexpr)
算法·c++20
2401_841495649 分钟前
【数据结构】英文单词词频统计与检索系统
数据结构·c++·算法·排序·词频统计·查找·单词检索
独自破碎E9 分钟前
【迭代+动态规划】把数字翻译成字符串
算法·动态规划
sunfove9 分钟前
从信息熵到决策边界:决策树算法的第一性原理与深度解析
算法·决策树·机器学习
Niuguangshuo13 分钟前
CLIP:连接图像与文本的 AI 核心工具
人工智能·神经网络·算法
sali-tec15 分钟前
C# 基于OpenCv的视觉工作流-章13-边缘提取
人工智能·opencv·算法·计算机视觉
kaikaile199523 分钟前
基于MATLAB的PSO-ELM(粒子群优化极限学习机)算法实现
深度学习·算法·matlab
YuTaoShao25 分钟前
【LeetCode 每日一题】1895. 最大的幻方——(解法二)前缀和优化
linux·算法·leetcode
a程序小傲28 分钟前
中国邮政Java面试被问:边缘计算的数据同步和计算卸载
java·服务器·开发语言·算法·面试·职场和发展·边缘计算