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

相关推荐
liu****3 分钟前
11.Linux进程信号(三)
linux·运维·服务器·数据结构·1024程序员节
清风wxy5 分钟前
Duilib_CEF桌面软件实战之Duilib编译与第一个界面程序
c++·笔记·ui·mfc
csdn_aspnet6 分钟前
CentOS 7 上安装 MySQL 8.0
linux·mysql·centos
郝学胜-神的一滴6 分钟前
Linux下,获取子进程退出值和异常终止信号
linux·服务器·开发语言·c++·程序人生
海琴烟Sunshine24 分钟前
leetcode 345. 反转字符串中的元音字母 python
python·算法·leetcode
戴草帽的大z32 分钟前
在 rk3588上通过网络命名空间实现 eth0/eth1 网卡隔离与程序独立部署
linux·网络·rk3588·ip·iproute·网卡隔离·ip netns
nenchoumi31191 小时前
ROS2 Humble 笔记(七)标准与自定义 Interface 接口
笔记·机器人·ros2
fufu03111 小时前
俄罗斯方块
linux·运维·服务器
碧海潮生_CC1 小时前
【CUDA笔记】01-入门简介
笔记·cuda
Ronin3051 小时前
【Linux网络】应用层协议HTTP
linux·网络·http·应用层协议