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);
}
相关推荐
「QT(C++)开发工程师」21 小时前
C++11三大核心特性深度解析:类型特征、时间库与原子操作
java·c++·算法
乐分启航21 小时前
SliMamba:十余K参数量刷新SOTA!高光谱分类的“降维打击“来了
java·人工智能·深度学习·算法·机器学习·分类·数据挖掘
leiming621 小时前
CAN 通信协议学习讲义(带图文 + C 语言代码)
c语言·开发语言·学习
xht08321 天前
PHP vs C语言:核心差异全解析
c语言·开发语言·php
你真是饿了1 天前
算法专题二:滑动窗口
算法
ccLianLian1 天前
数论·约数
数据结构·算法
会编程的土豆1 天前
【数据结构与算法】最短路径---Dijkstra 算法
数据结构·c++·算法
2401_879693871 天前
C++中的观察者模式实战
开发语言·c++·算法
炽烈小老头1 天前
【 每天学习一点算法 2026/03/24】寻找峰值
学习·算法
fff9811181 天前
C++与Qt图形开发
开发语言·c++·算法