leetcode做题笔记100. 相同的树

给你两棵二叉树的根节点 pq ,编写一个函数来检验这两棵树是否相同。

如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。

思路一:

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

分析:

首先判断两个二叉树是否为空,再判断有值的情况,利用递归,若两个值相等则同时向左右子树继续进行判断

总结:

本题考察二叉树判断,利用了bfs算法将两个二叉树值全部判断得到答案

相关推荐
小毛驴8504 分钟前
Linux 后台启动java jar 程序 nohup java -jar
java·linux·jar
DKPT37 分钟前
Java桥接模式实现方式与测试方法
java·笔记·学习·设计模式·桥接模式
好好学习啊天天向上1 小时前
世上最全:ubuntu 上及天河超算上源码编译llvm遇到的坑,cmake,ninja完整过程
linux·运维·ubuntu·自动性能优化
tan180°2 小时前
MySQL表的操作(3)
linux·数据库·c++·vscode·后端·mysql
巴伦是只猫2 小时前
【机器学习笔记Ⅰ】13 正则化代价函数
人工智能·笔记·机器学习
典学长编程3 小时前
Linux操作系统从入门到精通!第二天(命令行)
linux·运维·chrome
wuk9983 小时前
基于MATLAB编制的锂离子电池伪二维模型
linux·windows·github
YuTaoShao4 小时前
【LeetCode 热题 100】48. 旋转图像——转置+水平翻转
java·算法·leetcode·职场和发展
独行soc6 小时前
#渗透测试#批量漏洞挖掘#HSC Mailinspector 任意文件读取漏洞(CVE-2024-34470)
linux·科技·安全·网络安全·面试·渗透测试
BD_Marathon6 小时前
Ubuntu下Tomcat的配置
linux·ubuntu·tomcat