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);
}
相关推荐
旖-旎17 分钟前
《LeetCode 416 分割等和子集》
c++·算法·leetcode·动态规划·背包问题
Jasmine_llq25 分钟前
《P15798 [GESP202603 五级] 有限不循环小数》
算法·有限小数判定数论定理·质因子约分检验·枚举生成合法数字·哈希集合去重·快速 io 优化
学计算机的计算基33 分钟前
操作系统八股文:进程与线程全面梳理(附调度算法+IPC+锁机制)
java·算法
不会c+38 分钟前
C语言:入门到精通(408考研版)系列七 派生的数据类型
c语言·开发语言
xyy1232 小时前
C# Polly 弹性策略库指南
算法
程序猿编码2 小时前
没有AI框架,没有GPU,一个C语言文件跑通大模型
c语言·开发语言·人工智能·深度学习·ai·大模型
CHANG_THE_WORLD2 小时前
Linux C 多线程 TCP 并发服务器:从 `accept()` 到资源管理深度剖析
linux·服务器·c语言
geovindu2 小时前
go: Recursion Algorithm
开发语言·后端·算法·golang·递归算法
十月的皮皮3 小时前
C语言学习笔记20260716-编译与链接
c语言·笔记·学习