当前位置: 首页 > news >正文

算法工程题(二叉树递归)

*  题意说明:
*      给你两棵二叉树的根节点 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
*
* 提示:
*  两棵树上的节点数目都在范围 [0, 100] 内
*  -104 <= Node.val <= 104
*
* Related Topics
*  树
*  深度优先搜索
*  广度优先搜索
*  二叉树
*
* @Date 2023/9/4 9:36
* @Version 1.0

示例:

public class IsSameTree_019 {public static void main(String[] args) {// 测试验证}public static boolean isSameTree(TreeNode p, TreeNode q) {return false;}
}

使用递归的方式来实现:

public class IsSameTree_019 {public static void main(String[] args) {TreeNode p;p = new TreeNode(1);p.left = new TreeNode(2);p.right = new TreeNode(3);TreeNode q;q = new TreeNode(1);q.left = new TreeNode(2);q.right = new TreeNode(3);// 测试验证System.out.println(isSameTree(p,q));}public static boolean isSameTree(TreeNode p, TreeNode q){//首先判断是否俩个节点为空if(p == null && q == null)return true;//判断俩边节点是否对等 返回为falseif((q == null && p != null) || (p == null && q != null))return false;//判断值不相同也返回falseif (p.val != q.val){return false;}elsereturn (isSameTree(p.left,q.left) && isSameTree(p.right,q.right));}static class TreeNode {int val;TreeNode left;TreeNode right;TreeNode() {}TreeNode(int val) {this.val = val;}TreeNode(int val, TreeNode left, TreeNode right) {this.val = val;this.left = left;this.right = right;}}
}

http://www.lryc.cn/news/156979.html

相关文章:

  • “指针跃动”受邀参加全球贸易服务峰会
  • Go Web开发的高级技巧和最佳实践
  • Verilog 基础知识
  • element ui 表格组件与分页组件的二次封装
  • 递归算法学习——有效的数独,解数独
  • 基于Alexnet深度学习网络的人员口罩识别算法matlab仿真
  • 【Java Web】利用Spring整合Redis,配置RedisTemplate
  • 如何正确的写出第一个java程序:hello java
  • 使用llvm 编译最新的linux 内核(LoongArch)
  • Using Multiple RDF Knowledge Graphs for Enriching ChatGPT Responses
  • 【Hive-小文件合并】Hive外部分区表利用Insert overwrite的暴力方式进行小文件合并
  • 位运算 |(按位或) (按位与) ^(按位异或)
  • Qt应用开发(基础篇)——复选按钮 QCheckBox 单选按钮 QRadioButton
  • AERMOD模型大气环境影响评价
  • 递归组装树结构的数据
  • 企业架构LNMP学习笔记7
  • 开店星小程序上架教程和后台Request failed with status code 500[undefined]问题处理
  • 第一百三十六回 WillPopScope组件
  • 【论文爬虫】自动将论文详细信息直送notion并自动下载(含源码)
  • Android知识点整理
  • JSON与电子表格
  • Oracle创建用户、授权视图权限
  • MT4移动端应用指南:随时随地进行交易
  • 【数据挖掘】学习笔记
  • MyBatis-Plus排除不必要的字段
  • webpack打包
  • 【Java SE】抽象类与接口
  • HTML <time> 标签
  • C++的向上转型
  • Android开发-Mac Android开发环境搭建(Android Studio Mac环境详细安装教程,适合新手)...