力扣:100. 相同的树(Java)

目录

题目描述

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

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

输入:

p = [1,2,3], q = [1,2,3]

输出:

true

代码实现:

java 复制代码
/**
 * Definition for a binary tree node.
 * public 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;
 * }
 * }
 */
class Solution {
    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.val != q.val) {// 树结点都不为空且具有不同的值
            return false;
        } else {// 树结点都不为空且具有相同的值
                // 递归比较左子树与右子树是否相同
            return isSameTree(p.left, q.left) && isSameTree(p.right, q.right);
        }
    }
}
相关推荐
shjita2 分钟前
记录java执行中的一个错误细节
java·开发语言
空中海3 分钟前
Docker入门到精通
java·docker·eureka
itzixiao15 分钟前
L1-067 洛希极限(10分)[java][python]
java·开发语言·算法
jinyishu_21 分钟前
链表经典OJ题
c语言·数据结构·算法·链表
java1234_小锋22 分钟前
Spring AI 2.0 开发Java Agent智能体 - Spring AI项目调用本地Ollama模型
java·人工智能·spring·spring ai2.0
二哈赛车手23 分钟前
新人笔记---多策略搭建策略执行链实现RAG检索后过滤
java·笔记·spring·设计模式·ai·策略模式
PESS ABIN23 分钟前
JavaWeb项目打包、部署至Tomcat并启动的全程指南(图文详解)
java·tomcat
葫三生26 分钟前
三生原理文章被AtomGit‌开源社区收录的意义探析?
人工智能·深度学习·神经网络·算法·搜索引擎·开源·transformer
AI进化营-智能译站29 分钟前
ROS2 C++开发系列15-模板实现通用算法|宏定义ROS2调试开关|一次编码适配多平台
java·c++·算法·ai
刀法如飞32 分钟前
Java数组去重的20种实现方式——指导AI解决不同问题的思路
java·算法·面试