【二叉树】 Same-tree

简介: 【二叉树】 Same-tree

1. 题目描述

给出两个二叉树,请写出一个判断两个二叉树是否相等的函数。

判断两个二叉树相等的条件是:两个二叉树的结构相同,并且相同的节点上具有相同的值。

 

2. 题目分析

1. 这个题目最简单的方法就是用递归来做

       if(p == null && q == null){
           return true;
       }else if(p == null || q == null){
           return false;
       }else if(p.val != q.val){
           return false;
       }

2. 第二个做法,也就是如果我们没有想起来这个递归的话,直接用遍历一遍树,然后依次比较,这里如果是null的话,也要放进去

 

3. 题目代码

public class Solution {
    /**
     * 
     * @param p TreeNode类 
     * @param q TreeNode类 
     * @return bool布尔型
     */
    public boolean isSameTree (TreeNode p, TreeNode q) {
        // write code here
       if(p == null && q == null){
           return true;
       }else if(p == null || q == null){
           return false;
       }else if(p.val != q.val){
           return false;
       }
        return isSameTree(p.left,q.left) && isSameTree(p.right,q.right);
    }
}


相关文章
CSS------当内容超出div宽度后自动换行和限制文字不超出div宽度和高度
原文:CSS------当内容超出div宽度后自动换行和限制文字不超出div宽度和高度 如图:   1.自动换行 111111111111111111111111 2.限制宽高度 11111111111111111111111111  (注意:如果div放在li中还需...
4018 0
|
机器学习/深度学习 算法 安全
基于CNN卷积神经网络的口罩检测识别系统matlab仿真
基于CNN卷积神经网络的口罩检测识别系统matlab仿真
|
12月前
|
存储 NoSQL 调度
|
分布式计算 DataWorks MaxCompute
DataWorks操作报错合集之spark操作odps,写入时报错,是什么导致的
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
缓存 Java 数据库
深入理解 Java IO 流:原理与应用
【4月更文挑战第4天】Java IO 浴是处理文件和数据输入输出的关键,涉及数据传输和处理。核心概念包括输入流(从源头读取)和输出流(写入目标),由InputStream和OutputStream接口定义基础操作。具体实现如FileInputStream和FileOutputStream用于文件操作,BufferedInputStream和BufferedOutputStream提升性能。IO流广泛应用于文件操作、网络通信、数据库交互和系统交互。其优点在于灵活性、可扩展性和高效性。使用时注意关闭流、处理异常及选择合适流实现。理解IO流原理和应用能提升编程效率和程序性能。
279 1
|
弹性计算 网络协议 机器人
函数计算常见问题之启动报错如何解决
函数计算(Function Compute, FC)是阿里云提供的无服务器计算服务,它允许用户在无需管理服务器的情况下运行代码,但在配置和执行过程中可能遇到报错,本合集致力于梳理FC服务中的常见报错和配置问题,并提供解决方案,帮助用户优化函数执行环境。
200 1
|
测试技术 开发工具 Android开发
移动应用开发之旅:从新手到专家
【9月更文挑战第2天】在这篇文章中,我们将探索移动应用开发的奇妙世界。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息和见解。我们将讨论移动操作系统的选择、应用开发工具和技术、以及如何从零开始构建自己的移动应用。让我们一起踏上这段旅程,发现移动应用开发的乐趣和挑战吧!
62 0
|
前端开发 NoSQL Java
华为大神珍藏版:SpringBoot全优笔记,面面俱到太全了
作为开发人员,对于Spring全家桶肯定是不陌生的,而来自于Spring大家族的Spring Boot,作为Spring团队提供的流行框架,它的存在解决的Spring框架使用较为繁琐的问题,所以掌握SpringBoot是精通Spring必不可少的一个过程。
|
机器学习/深度学习 算法 搜索推荐
F1值(F1 Score)
F1值(F1 Score)是用于综合评估分类模型性能的指标,它结合了精确率(Precision)和召回率(Recall)。F1值是精确率和召回率的调和平均数,它可以用来衡量模型在保持精确率和召回率之间的平衡时的性能。
7960 1
|
Python
伸展树(Splay Tree)
伸展树(Splay Tree),也叫分裂树或摊平树,是一种自平衡的二叉查找树。它在插入、删除、查找等操作中,通过伸展(Splay)操作保持树的平衡,使得树的高度始终保持在 O(log n)。它具有较高的查找、插入、删除等操作的性能,因此被广泛应用于计算机科学中。 伸展树的操作包括:插入、删除、查找、最大值、最小值等。下面是一个简单的伸展树操作过程:
222 3

热门文章

最新文章