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算法将两个二叉树值全部判断得到答案

相关推荐
某风吾起12 分钟前
Linux 消息队列的使用方法
java·linux·运维
醇醛酸醚酮酯1 小时前
Leetcode热题——移动零
算法·leetcode·职场和发展
夏末秋也凉1 小时前
力扣-数组-704 二分查找
算法·leetcode
qy发大财1 小时前
平衡二叉树(力扣110)
数据结构·算法·leetcode·职场和发展
Golinie1 小时前
【C++高并发服务器WebServer】-2:exec函数簇、进程控制
linux·c++·webserver·高并发服务器
Icoolkj2 小时前
微服务学习-Nacos 注册中心实战
linux·学习·微服务
Moniicoo2 小时前
Linux中关于glibc包编译升级导致服务器死机或者linux命令无法使用的情况
linux·运维·服务器
雾里看山2 小时前
【MySQL】 库的操作
android·数据库·笔记·mysql
Zfox_2 小时前
应用层协议 HTTP 讲解&实战:从0实现HTTP 服务器
linux·服务器·网络·c++·网络协议·http
wangchen_02 小时前
Linux终端之旅: 权限管理三剑客与特殊权限
linux·运维·服务器