力扣: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);
        }
    }
}
相关推荐
黄焖鸡能干四碗4 分钟前
智慧教育,智慧校园,智慧安防学校建设解决方案(PPT+WORD)
java·大数据·开发语言·数据库·人工智能
神里流~霜灭11 分钟前
(C++)数据结构初阶(顺序表的实现)
linux·c语言·数据结构·c++·算法·顺序表·单链表
lssjzmn13 分钟前
Spring Web 异步响应实战:从 CompletableFuture 到 ResponseBodyEmitter 的全链路优化
java·前端·后端·springboot·异步·接口优化
new_daimond26 分钟前
二级缓存在实际项目中的应用
java
一只乔哇噻33 分钟前
java后端工程师进修ing(研一版 || day41)
java·开发语言·学习·算法
愚润求学35 分钟前
【贪心算法】day7
c++·算法·leetcode·贪心算法
User_芊芊君子1 小时前
【Java】设计模式——单例、工厂、代理模式
java·设计模式·代理模式
2301_803554521 小时前
正向代理,反向代理,负载均衡还有nginx
java·nginx·负载均衡
要开心吖ZSH1 小时前
软件设计师备考-(十六)数据结构及算法应用(重要)
java·数据结构·算法·软考·软件设计师
向上的车轮1 小时前
基于Java Spring Boot的云原生TodoList Demo 项目,验证云原生核心特性
java·spring boot·云原生