相同的树——java

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

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

示例 1:

输入:p = [1,2,3], q = [1,2,3]
输出:true

示例 2:

输入:p = [1,2], q = [1,null,2]
输出:false

示例 3:

输入:p = [1,2,1], q = [1,1,2]
输出:false

解题:如何去判断两棵树相同?根节点相同,左子树相同右子树相同  如果两棵树都为空则它们肯定相同,若一棵树为空则两棵树肯定不相同;若两棵树对应节点都存在且值相同,则两棵树肯定相同。所以要使用递归的思想

public boolean isSameTree(TreeNode p, TreeNode q) {
        if (p==null && q==null)
          return true;
        else if(p==null &&q!=null)
          return false;
        else if(p!=null && q==null)
          return false;
        else{
            if(p.val==q.val)
            {
                return isSameTree(p.left,q.left) && isSameTree(p.right,q.right);
            }
            else
              return false;
        }
 }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/614226.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C#高级编程笔记-泛型

本章的主要内容如下: ● 泛型概述 ● 创建泛型类 ● 泛型类的特性 ● 泛型接口 ● 泛型结构 ● 泛型方法 目录 1.1 泛型概述 1.1.1 性能 1.1.2 类型安全 1.1.3 二进制代码的重用 1.1.4 代码的扩展 1.1.5 命名…

SpringBootWeb 篇-深入了解请求响应(服务端接收不同类型的请求参数的方式)

🔥博客主页: 【小扳_-CSDN博客】 ❤感谢大家点赞👍收藏⭐评论✍ 文章目录 1.0 请求响应概述 1.1 简单参数 1.2 实体参数 2.3 数组集合参数 2.4 日期参数 2.5 json 参数 2.6 路径参数 3.0 完整代码 1.0 请求响应概述 当客户端发送不同的请求参…

【驱动】SPI

1、简介 SPI(Serial Peripheral interface)串行外设接口。 特点: 高速:最大几十M,比如,AD9361的SPI总线速度可以达到40MHz以上全双工:主机在MOSI线上发送一位数据,从机读取它,而从机在MISO线上发送一位数据,主机读取它一主多从:主机产生时钟信号,通过片选引脚选择…

微火全域外卖城市合伙人究竟是什么?详细介绍

随着外卖市场的蓬勃发展,微火全域外卖团购业务正逐渐崭露头角,成为商家与消费者之间的新桥梁。这种业务模式,也被称为全域合伙人,其魅力在于其独特的多平台销售策略和简便的管理系统。那么,这种全域外卖城市合伙人&…

N1077B keysight 是德 光/电时钟恢复设备,参数

Keysight N1077B是一款光/电时钟恢复设备,支持115 MBd至24 GBd的数据速率范围,适用于多模和单模光信号以及电信号。该设备能够处理PAM4和NRZ两种类型的数据信号,并提供符合标准的时钟恢复功能。 型 号:N1077B/A 名 称&#xff1a…

【教程向】从零开始创建浏览器插件(四)探索Chrome扩展的更多常用API

探索Chrome扩展的更多常用API 在Chrome扩展开发中,除了最基础的API外,Chrome还提供了一系列强大的API,允许开发者与浏览器的各种功能进行交互。本文将介绍其中几个常用的API,并提供详细的示例代码帮助您开始利用这些API。 书签…

【Spring】初识 Spring AOP(面向切面编程)

目录 1、介绍AOP 1.1、AOP的定义 1.2、AOP的作用 1.3、AOP的核心概念及术语 2、AOP实现示例 3、EnableAspectJAutoProxy注解 1、介绍AOP 1.1、AOP的定义 AOP(Aspect Orient Programming),直译过来就是面向切面编程,AOP 是一…

大型模型技术构建本地知识库

使用大型模型技术构建本地知识库是一个复杂的过程,涉及到数据科学、机器学习和软件工程等多个领域的知识。以下是构建本地知识库的一般步骤。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 1.需求分析: 确定知…

软件工程经济学--期末复习资料

软件工程经济学--期末复习资料 前言第一章 绪论第二章 软件工程经济学基础第三章 软件的成本管理与定价分析第四章 软件工程项目评价方法与经济效果评价第五章 软件生产函数、效益分析及不确定性分析第六章 软件工程项目进度计划的制定结尾总结 前言 软件工程经济学&#xff0…

书生作业:XTuner

作业链接: https://github.com/InternLM/Tutorial/blob/camp2/xtuner/homework.md xtuner: https://github.com/InternLM/xtuner 环境配置 首先,按照xtuner的指令依次完成conda环境安装,以及xtuner库的安装。 然后,我们开始尝试…

VBA信息获取与处理第四节:获取唯一非重复值返回数组的代码

《VBA信息获取与处理》教程(版权10178984)是我推出第六套教程,目前已经是第一版修订了。这套教程定位于最高级,是学完初级,中级后的教程。这部教程给大家讲解的内容有:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互…

scanf留下的那一片云彩

【题目描述】 给出一个由O和X组成的串(长度为1~80),统计得分。每个O的得分为目前连续出现的O的个数,X的得分为0。例如,OOXXOXXOOO的得分为1200100123。 输入第一行表示有n个字符串,后续是n行字…

【matlab基础知识代码】(十八)无约束最优化问题

min下面的x称为优化向量或者是决策变量 匿名函数法 >> f(x)(x(1)^2-2*x(1))*exp(-x(1)^2-x(2)^2-x(1)*x(2)); x0[0; 0]; [x,b,c,d]fminsearch(f,x0), x 0.6111 -0.3056 b -0.6414 c 1 d 包含以下字段的 struct: iterations: 72 funcCount: 137 algor…

Hive SQL-DML-insert插入数据

Hive SQL-DML-insert插入数据 1. 插入静态数据 可以直接插入具体的值到Hive表中: INSERT INTO TABLE tablename (column1, column2, column3) VALUES (value1, value2, value3),(value4, value5, value6),...;2. 插入查询结果 将一条查询的结果直接插入到另一个表中…

软件工程基础知识,软考选择题的重点

本篇知识来自:软件设计师考试同步辅导 ---考点。。。。。,钟彩华 博伟玉 清华出版社,那本书。仅供学习。以下理解都是本人自己认为的。仅供参考。 本书的第132页,第五章知识。 目录 软件工程叙述 软件的生命周期 软件过程 软…

android studio配置Http Proxy

1、问题描述: Error:Unable to tunnel through proxy. Proxy returns “HTTP/1.1 400 Bad Request” 解决:HTTP Proxy设置 1.File→Settings…→System Settings → HTTP Proxy → Auto-detect proxy settings”; 2.勾选下方“Automatic prox…

Codigger:Vim的革新者,提升开发体验和功能性

深知Vim在编程和文本编辑领域的卓越地位,因此,在设计和开发过程中,Codigger始终将保留Vim的核心功能和高度定制能力作为首要任务。然而,Vim的复杂性和高度定制性也让很多新用户望而却步。为了降低这种使用门槛,Codigge…

常用Linux命令详细总结

一、文档编辑、过滤、查看命令 1、cp 复制文件和目录 -a 复制文件并保持文件属性 -d 若源文件为链接文件,则复制链接文件属性而非文件本身 -i 覆盖文件前提示,如果不要提示,在命令前加上\ -r 递归复制,通常用于目录的复制 …

【bug记录】清除僵尸进程,释放GPU显存

目录 1. 为什么会出现这种情况?2. 解决方案方法一:使用 fuser 命令方法二: 3. 小贴士 在进行深度学习或其他需要GPU支持的任务时,我们有时会发现虽然没有可见的进程在执行,但GPU资源却意外地被占用。这种情况往往会阻碍…

揭秘LLMOps,高效开发大型语言模型

大家好,随着人工智能(AI)的蓬勃发展,一个新兴领域语言模型运维(LLMOps)正逐渐成为关注的焦点。LLMOps专注于对大型语言模型(LLMs),例如OpenAI的GPT系列,进行全…