LeetCode:对称的二叉树(C语言)

1、问题概述:给一个二叉树,看是否按轴对称

2、示例

示例 1:

复制代码
输入:root = [1,2,2,3,4,4,3]
输出:true

示例 2:

复制代码
输入:root = [1,2,2,null,3,null,3]
输出:false

3、分析

(1)判断为空的现象:如果都为空则为true,2者有一个为空则为false

(2)进行递归,因为要遍历2个树是否为,参数传左子树和右子树

4、代码

cpp 复制代码
bool judgeSymmetric(struct TreeNode *root1,struct TreeNode *root2){
    if(root1==NULL && root2==NULL) return true;
    if(root1==NULL && root2!=NULL) return false;
    if(root1!=NULL && root2==NULL) return false;
    if(root1->val==root2->val){
        return judgeSymmetric(root1->left,root2->right) && judgeSymmetric(root1->right,root2->left);
    } else {
        return false;
    }
}


bool isSymmetric(struct TreeNode* root) {
   return judgeSymmetric(root,root);
}
相关推荐
longlongzihan7 小时前
LeetCode 17电话号码的字母组合:回溯算法(DFS)详解
c++·算法·leetcode·深度优先
封印师请假去地球钓鱼7 小时前
边解边变的问题:从“决策依赖“一词出发
人工智能·算法
今晚打老虎8 小时前
c++之提高A(前缀和)(第三课)
数据结构·c++·算法
不会就选b9 小时前
算法日常・每日刷题--<贪心>26
数据结构·算法
铅笔小新z10 小时前
【C语言】操作符
c语言
hetao173383710 小时前
2026-09-29 hetao1733837 的刷题记录
c++·算法
by2099911 小时前
从 malloc/free 到 new/delete:真正理解 C++ 中的内存管理与对象生命周期
c语言·c++·经验分享·动态内存管理
额额额对了11 小时前
SPI通信
linux·c语言·汇编·单片机·嵌入式硬件·arm
欣欣之王来了11 小时前
AI合规专项:AI算法透明度的合规要求
人工智能·算法
wzdark11 小时前
分块思想在算法优化中的实践与应用4
算法