相同的树LeetCode

news2025/1/21 1:01:16

100. 相同的树 - 力扣(LeetCode100. 相同的树 - 力扣(

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

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

 

 

/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     struct TreeNode *left;
 *     struct TreeNode *right;
 * };
 */
bool isSameTree(struct TreeNode* p, struct TreeNode* q) {
    if(p==NULL && q==NULL)
    {
        return true;
    }

    if(p==NULL || q==NULL)
    {
        return false;
    }

    if(p->val!=q->val)
    {
        return false;
    }

    return isSameTree(p->left,q->left)
    && isSameTree(p->right,q->right);

}

 

递归其实大部分人都是想的太复杂了其实可以不先去向递归的展开图,先思考最小子问题就把他当成一个循环来做

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python 运筹优化13 Thompson Sampling 解读

说明 这部分应该是Multi-Armed Bandit的最后一部分了。 内容 1 On Line Ads 这个实验,最初的目的就是为了选出最佳的广告。首先,通过伯努利分布,模拟了某个广告的有效率。在真实场景里,我们是无法知道那个广告更好的。可能在t…

css中用于设置光标颜色的属性

caret-color 是一个 CSS 属性,它用于定义输入光标(caret)的颜色。这里的“插入光标”(insertion caret)指的是在网页的可编辑器区域内,用来指示用户的输入具体会插入到哪里的那个一闪一闪的形似竖杠 | 的东…

25考研数学,强化跟张宇还是武忠祥?

高数基础阶段结束,每年会有很多人,由于各种原因,在强化阶段换老师。 要提醒大家的是:25的情况和以前不一样! 原因包括各位老师的课程大幅改动,以及24命题的变化。 首先看可行性:强化换武忠祥可…

可重构柔性装配产线:为工业制造领域注入了新的活力

随着科技的飞速发展,智能制造正逐渐成为引领工业革新的重要力量。在这一浪潮中,可重构柔性装配产线以其独特的技术优势和创新理念,为工业制造领域注入了新的活力,开启了创新驱动的智能制造新篇章。 可重构柔性装配产线是基于富唯智…

【全开源】Java情侣飞行棋系统微信小程序+H5+微信公众号+APP 源码

情侣飞行棋是一款专为情侣设计的游戏,具有多种特色功能和优势 特色功能: 实时互动:情侣飞行棋支持实时互动,情侣们可以同时进行游戏,共同制定策略、掷骰子、移动棋子等操作。这种实时的互动方式让情侣们更加紧密地联系…

OV通配符/泛域名SSL证书怎么获取和安装

OV通配符/泛域名SSL证书的获取和安装主要可以分为以下几个步骤: 一、获取证书 1. 选择服务商 选择一个提供OV通配符SSL证书的服务商,例如JoySSL。 2. 提交申请 在服务商网站上选择OV通配符SSL证书产品,填入基础信息,如公司名…

【数据结构】线性表--顺序表(二)

文章目录 1、什么是线性表2、线性表的基本操作3、顺序表3.1、顺序表的定义3.2、顺序表的实现方式:静态分配3.3、顺序表的实现方式:动态分配3.4、顺序表的特点3.5、顺序表的初始化与插入操作3.6、顺序表的删除与查询 1、什么是线性表 ​ 线性表是具有相同…

阿里云服务器下,部署LNMP环境安装wordpress

目录 1 LNMP部署1、简单说明2、nginx部署3、php8 安装4、mysql8安装5、配置 nginx 实现支持 PHP 程序6、安装 php 组件7、测试 2 wordpress部署1、安装2、配置 总结 1 LNMP部署 1、简单说明 首先需要明白,LNMP指的是Linux、Nginx、MySQL、PHP。而如果使用阿里云服…

idea上如何新建git分支

当前项目在dev分支,如果想在新分支上开发代码,如何新建一个分支呢?5秒搞定~ 1、工具类选择git,点击New Branch 或者右下角点击git分支,再点击New Branch 2、在弹出的Create New Branch弹窗中,输入你的新分支…

OpenNJet:引领下一代云原生应用引擎

文章目录 一、前言二、什么是OpenNJet 应用引擎三、OpenNJet的优势3.1 性能无损动态配置3.2 灵活的CoPilot框架3.3 支持HTTP/33.4 支持国密3.5 企业级应用3.6 高效安全 四、centos 安装4.1 生成njet.repo4.2 更新yum 缓存4.3 安装 njet 或 njet-otel 五、OpenNJet配置与部署5.1…

面 试 题

过滤器和拦截器的区别 都是 Aop 思想的一种体现,用来解决项目中 某一类 问题的两种接口(工具),都可以对请求做一些增强 出身 过滤器来自 servlet 拦截器来自 spring 使用范围 过滤器 Filter 实现了 iavax.servlet.Filter 接口,也就是说…

33三个启动菜单的区别辨析与本质探索

三个启动菜单的区别辨析与本质探索 你是否傻傻分不清以下三种启动菜单的本质到底是什么? 有一个看起来非常古老生硬,蓝色大背景,字母丑陋; 还有一个看起来老气横秋,黑底白字,像极了远古时期的电脑报废的样…

对于fastjson之rmi利用问题的解决

前言 也是被一个问题困扰了好久,都要崩溃了,就为了一个问题调试半天的代码,最后终于解决了,现在做一个记录,幸好没有放弃,感觉学java是比较慢的,但是学java就是重在分析能力的提升,…

Linux中的网络隔离功能 netns

Network Namespace(netns) 是Linux内核提供的一项实现网络隔离的功能,它能隔离多个不同的网络空间,并且各自拥有独立的网络协议栈。通过 namespace 可以隔离容器的进程 PID、文件系统挂载点、主机名等多种资源,它可以为…

26版SPSS操作教程(高级教程第二十一章)

目录 前言 粉丝及官方意见说明 第二十一章一些学习笔记 第二十一章一些操作方法 信度分析 问卷信度分析 假设数据 具体操作 结果解释 下面进行进一步分析 结果解释 其他常用信度系数介绍 概化理论SPSS中的实现 结果解释 项目反应理论(item respons…

初识FlaskMySQL实现前后端通信 全栈开发之路——后端篇(1)

全栈开发一条龙——前端篇 第一篇:框架确定、ide设置与项目创建 第二篇:介绍项目文件意义、组件结构与导入以及setup的引入。 第三篇:setup语法,设置响应式数据。 第四篇:数据绑定、计算属性和watch监视 第五篇 : 组件…

用户登录认证和权限授权(SpringSecurity、JWT、session)

文章目录 前言一、登录认证1. 问题引入2. Session2.1 实现原理2.2 过滤器Filter2.3 上下文对象 3. JWT3.2 实现步骤3.3 拦截器 HandlerInterceptorAdapter3.4 上下文对象 4. Session VS JWT 二、权限授权1. 权限类型1.1 页面权限(菜单项权限)1.2 ACL模型…

学习软考----数据库系统工程师32

NoSQL非关系型数据库 CAP理论和BASE特性 关系型数据库主要使用ACID理论 各种NoSQL数据 库的分类与特点

实在智能AI+RPA:引领数字化转型的超自动化智能体

引言 在数字化时代,企业面临着前所未有的挑战和机遇。数字化转型不仅是企业生存的需要,更是实现持续增长和创新的关键。AIRPA作为数字化转型的重要驱动力,正帮助企业实现业务流程的自动化和智能化,从而提升效率、降低成本、增强竞…

VisualStudio C#中使用Log4net输出不同类型的日志

20240514 By wdhuag 目录 前言: 参考: 安装Log4net包并引用: 创建log4net.config配置文件,属性要设置始终复制: 在AssemblyInfo.cs中加入配置: 初始化时读取配置: 调用: 一个…