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 分钟前
javax.servlet.Filter 介绍-笔记
笔记·servlet
林下清风~17 分钟前
力扣hot100——347.前K个高频元素(cpp手撕堆)
算法·leetcode·职场和发展
小雅痞19 分钟前
[Java][Leetcode middle] 238. 除自身以外数组的乘积
java·leetcode
疯狂的挖掘机33 分钟前
记一次从windows连接远程Linux系统来控制设备采集数据方法
linux·运维·windows
忍者算法1 小时前
AWS VPC 核心笔记(小白向)
笔记·云计算·aws
北温凉1 小时前
【学习笔记】机器学习(Machine Learning) | 第七章|神经网络(1)
笔记·机器学习
进击的小白菜1 小时前
Java回溯算法解决非递减子序列问题(LeetCode 491)的深度解析
java·算法·leetcode
sz66cm1 小时前
Linux基础 -- 用户态Generic Netlink库高性能接收与回调框架
linux
数巨小码人1 小时前
Linux常见命令
大数据·linux·运维·服务器·elasticsearch·搜索引擎
麻雀无能为力2 小时前
python自学笔记2 数据类型
开发语言·笔记·python