剑指Offer之面试题18:树的子结构

使用 MATLAB/Simulink + Simscape Electrical + Simulink Design Optimization,构建一个沙漠环境中光伏组件灰尘积累与效率下降仿真模型 本文通过,构建了沙漠环境中光伏组件灰尘积累与效率下降仿真模型✅ 建立了风速-沙尘-积尘速率的物理关系✅ 仿真了灰尘积累过程及其对Isc 和 Pmax的影响✅ 量化分析了不同清洁策略的经济性✅ 提出了优化设计与智能运维建议。 阅读详情

所有代码均通过G++编译器测试,仅为练手纪录。


//面试题18:树的子结构

//题目:输入两棵二叉树A和B,判断B是不是A的子结构。


//面试题18:树的子结构
//题目:输入两棵二叉树A和B,判断B是不是A的子结构。

bool TreeCompre(BinTreeNode *pRootTree,BinTreeNode *pSubTree)
{
    if(NULL == pSubTree)
    {
        return true;
    }
    else if(NULL == pRootTree)
    {
        return false;
    }
    
    if(pRootTree->m_nValue != pSubTree->m_nValue)
    {
        return false;
    }
    
    bool bEqualLeft = TreeCompre(pRootTree->m_pLeft, pSubTree->m_pLeft);
    bool bEqualRight = TreeCompre(pRootTree->m_pRight, pSubTree->m_pRight);
    
    return bEqualLeft && bEqualRight;
}

bool TreeHasSubTree(BinTreeNode *pRootTree,BinTreeNode *pSubTree)
{
    if(NULL == pRootTree || NULL == pSubTree)
    {
        return false;
    }
    
    bool bResult = false;
    
    if(pRootTree->m_nValue == pSubTree->m_nValue)
    {
        bResult = TreeCompre(pRootTree,pSubTree);
    }
    
    if(!bResult)
    {
        bResult = TreeHasSubTree(pRootTree->m_pLeft, pSubTree);
    }
    
    if(!bResult)
    {
        bResult = TreeHasSubTree(pRootTree->m_pRight, pSubTree);
    }
    
    return bResult;
}


ZhaiPillary

2016-12-25




FPGA入门200例(17):如何阅读RTL原理图(Schematic)?将Verilog代码与门级电路对应 本文针对FPGA开发新手常见误区,重点讲解了RTL原理图的重要性和阅读方法。文章指出,仅通过仿真验证代码会导致板级测试异常,而RTL原理图能直观呈现Verilog代码对应的硬件结构(门电路、寄存器、多路选择器等)。通过"识别基础元件→跟踪信号路径→验证逻辑关系"的三步法,新手可以建立代码与硬件的映射思维,排查冗余逻辑、意外锁存器等错误。文章还结合Vivado/Quartus工具操作指南和典型代码案例,帮助读者掌握从代码到硬件实现的转换过程,避免混淆RTL与门级原理图、忽略信号位宽等常见误 阅读详情

相关推荐

uniapp实现app版本发现新版本后,自动更新

app实现自动更新

oldolder的博客 1283

《剑指offer》面试题18:树的子结构

题目:输入两棵二叉树A和B,判断B是不是A的子结构。 思路:分成两步 在树A中找到和B的根节点的值一样的节点R; 判断树A中以R为根节点的子树是不是包含和树B一样的结构。 因此有两个函数,函数1遍历树A找到等于rootB的节点,函数2比较 “rootA” 是否包含 “rootB”。 // 找到tree1中等于tree2的root值相等的节点 public static boolean h...

twostarxx的博客 211

初探Proxmox Datacenter Manager:统一管理多集群与单节点的利器

本文介绍了Proxmox Datacenter Manager (PDM) 这一统一管理工具,它能有效解决多套Proxmox VE环境(包括集群和单节点)管理碎片化的痛点。文章详细阐述了PDM的核心功能、安装部署步骤,并通过实战演示了如何添加单节点与整个集群,实现资源的集中监控与基础运维,为运维人员提供了高效的集中管理解决方案。

weixin_29217235的博客 159

剑指offer 面试题:树的子结构

题目:输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 思路:将要匹配的子树根节点一个个在树中查找,子树根等于当前树某节点,则一一匹配每个值,否则就遍历树中所有节点 /* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(in...

别说话写代码的博客 244

2024“华为杯”中国研究生数学建模竞赛(A题)深度剖析_数学建模完整过程+详细思路+代码全解析

目标是优化风力涡轮机的功率调度,使其在给定的实时风速数据下,最小化涡轮机关键组件(如塔架和主轴)的疲劳损伤。问题的挑战在于,考虑通信延迟和测量噪声的同时,要确保功率输出与风速变化的响应快速且准确。

2401_82549447的博客 6628

CANOe实战指南 - 从入门到精通的全流程解析

本文是CANOe实战指南,全面解析从入门到精通的全流程。内容涵盖CANOe软件的核心功能仿真、测试与分析,详细指导安装配置、工程创建、CAN信号收发、UDS诊断通信、CAPL自动化编程以及Panel面板设计。通过实战案例,帮助汽车电子工程师快速掌握这一行业标杆工具,构建自动化测试环境,提升开发与测试效率。

pear55的博客 574

剑指offer 面试题26. 树的子结构 [中等]

面试题26. 树的子结构 https://leetcode-cn.com/problems/shu-de-zi-jie-gou-lcof/submissions/ 注意func()函数中两个if的顺序 class Solution { public: bool isSubStructure(TreeNode* A, TreeNode* B) { if(!A ||...

Vermouth_Su的博客 194

Altium Designer (AD) 设计软件高频面试题及参考答案(3万字长文)

在Altium Designer(AD)中,设计复用是一种关键的策略,它允许设计师在多个项目中重复使用经过验证的设计元素,如原理图符号、PCB布局、元器件封装和设计规则集。在Altium Designer (AD) 中,手动布线和交互式布线是PCB设计中常见的两种布线模式,它们提供了设计师对布线路径的直接控制,特别是在处理复杂或关键信号路径时尤为有用。在Altium Designer (AD) 中进行电路级仿真是一项重要的设计验证步骤,它允许设计师在实际制造之前对电路的行为进行预测和分析。

大模型大数据攻城狮的专栏 4782

剑指offer面试题18-:树的子结构

题目:有两个二叉树,指向根节点的指针分别为root1和root2.现在要判断root2是否为root1的子树结构。也就是说root1所指向的树中是否包含root2所指向的树。 思路:使用某种遍历方法(如中序遍历)从根节点开始扫描root1中的每个节点,并与root2的每个节点比较,如果相等则比较左孩子和右孩子。如果不等则返回到上边去。 #include #include using nam

bian_qing_quan11的博客 316

【WRF安装】完整自动化 WRF-ARW/WRF-Chem 安装脚本(多服务器测试)

【WRF安装】完整自动化 WRF-ARW/WRF-Chem 安装脚本(多服务器测试)

WW、forever的博客 285

《Python全栈系列教程》专栏介绍及文章汇总

《Python全栈系列教程》专栏介绍及文章汇总

孤寒者的博客 71万+

剑指offer面试题 树的子结构

题目描述:输入两棵树A和B,判断B是不是A的子结构。二叉树结点定义如下:

Andy 1259

使用epiDisplay包中的logistic

其中的logistic.display函数可以用于获取逻辑回归模型的汇总统计信息,包括自变量的优势比和置信区间,以及回归系数的Wald检验的p值。最后,我们使用print函数打印出汇总统计信息。使用epiDisplay包中的logistic.display函数获取逻辑回归模型的汇总统计信息(包括自变量的初始和调整后的优势比及置信区间,回归系数的Wald检验的p值)- R语言。通过使用logistic.display函数,我们可以方便地获取逻辑回归模型的重要统计信息,并对自变量的影响进行解释和推断。

CyberJolt的博客 608

《剑指Offer》面试题18:树的子结构

《剑指Offer》 P117面试题18:树的子结构题目:

(●—●) 339

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

剑指offer:面试题18——树的子结构

剑指offer:面试题18——树的子结构 题目:输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) /* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NU...

MereX的博客 361

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

剑指offer面试题18:树的子结构

题目:输入两棵二叉树A和B,判断B是不是A的子结构。 算法分析:         要查找树A中是否存在和树B结构一样的子树,我们可以分为两步,第一步:在树A中找到和树B的根节点的值一样的节点R,第二步再判断树A中以R为根节点的子树是不是包含和树B一样的结构。 以上面两棵树为例来详细分析这个过程。首先我们试着在树A中找到值为8(树B的根节点的值)得节点。

做一名努力的通信程序员 596

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

关于剑指offer的阅读笔记 之面试题18 树的子结构细节错误

剑指offer面试题18  输入两棵二叉树A和B ,判断B是不是A的子树   思路:查找可以分为两步,第一步在A中找和B根结点值一样的根节点R,第二步 判断a中以R为根节点的子树是不是包含和树B一样的结构。  树的遍历我们采用递归,看过书之后自己写出如下代码: 第一步的代码: bool HasSubtree(BinaryTreeNode* pRoot1,BinaryTreeNode* pRo

Cinderella_hou的博客 238

《剑指offer》面试题18:树的子结构(java实现)

题目:输入两棵二叉树A和B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) ——来源于《剑指offer》 思路:先依次比较A和B的根结点,如果相等就递归比较左子树和右子树,如果不相等就继续比较下一个结点 代码实现: /** public class TreeNode { int val = 0; TreeNode left = null; Tr...

芊雨的博客 232

剑指offer-面试题 18:树的子结构

面试题 18:树的子结构 题目:输入两颗二叉树 A 和 B,判断 B 是不是 A 的子结构。

我的博客 455

剑指offer 面试题18 树的子结构

剑指offer 面试题18 树的子结构 面试题: 输入两棵二叉树 A 和 B,判断 B 是不是 A 的子结构。 二叉树的定义如下: package algorithm.foroffer.top20;/** * Created by liyazhou on 2017/5/26. * 面试题 18:树的子结构 * * 题目: * 输入两棵二叉树 A 和 B,判断 B

LYZ 458

【剑指Offer学习】【面试题18 :树的子结构】

题目:输入两棵二叉树A 和B,判断B 是不是A 的子结构。

https://github.com/Wang-Jun-Chao 6008

【一刷《剑指Offer》】面试题 18:树的子结构

首先明白:子结构怎么理解,可以理解成子结构是原树的子树(或者一部分)。也就是说,B 要是 A 的子结构,那么 B 的根节点+左子树+右子树都得在 A 中存在且构成树形结构。二叉树都是递归定义的,所以递归操作是比较常见的做法。在确定从该位置开始,在比较其左右子树的内容是否一致。先确定比较的起始位置。

Elena's Blog 432

剑指offer-面试题18:树的子结构

题目输入两棵二叉树A和B,判断B是不是A的子结构。二叉树结点的定义如下:public class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; } public TreeNode() { // TODO Auto-generated c

Decorator2015的博客 529

剑指Offer---面试题18:树的子结构

一.题目输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构);树的结点结构如下:public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val =

范二er 681

【剑指 Offer 学习】【面试题 18: 树的子结构】【思路】

题目: 输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)   思路: 若根节点相等,利用递归比较他们的子树是否相等 若根节点不相等,则利用递归分别在左右子树中查找。 详见代码,未添加测试用例   代码: package 树的子结构; import javax.sound.midi.Soundbank; /** * 输入两棵二叉树A,...

handsome_zan的博客 358

【剑指offer】面试题18:树的子结构

题目描述: 输入两颗二叉树A,B,判断B是不是A的子结构。 题目解析:

solar一抹阳光的专栏 679
上一篇: 剑指Offer之面试题17:合并两个排序的链表
下一篇: 剑指Offer之面试题19:二叉树的镜像
沐寒握冰
博客等级 码龄14年 57粉丝 58原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值