news 2026/9/23 6:17:28

力扣刷题:另一棵树的子树

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
力扣刷题:另一棵树的子树

题目:
给你两棵二叉树 root 和 subRoot 。检验 root 中是否包含和 subRoot 具有相同结构和节点值的子树。如果存在,返回 true ;否则,返回 false 。

二叉树 tree 的一棵子树包括 tree 的某个节点和这个节点的所有后代节点。tree 也可以看做它自身的一棵子树。

示例 1:

输入:root = [3,4,5,1,2], subRoot = [4,1,2]
输出:true

示例 2:

输入:root = [3,4,5,1,2,null,null,null,null,0], subRoot = [4,1,2]
输出:false

解析:
递归遍历 root 树的每个节点,看看:以当前节点为 root 的子树,是否和 t 树相同
从根节点开始,判断整个树是否和 subRoot 相同,不相同则递归左右子树,是否和 subRoot 相同
当遍历到 null 节点,始终没有返回true,则返回false

具体代码:

/** * Definition for a binary tree node. * function TreeNode(val, left, right) { * this.val = (val===undefined ? 0 : val) * this.left = (left===undefined ? null : left) * this.right = (right===undefined ? null : right) * } *//** * @param {TreeNode} root * @param {TreeNode} subRoot * @return {boolean} */varisSubtree=function(root,subRoot){if(!root){returnfalse}if(isSameTree(root,subRoot)){returntrue}returnisSubtree(root.left,subRoot)||isSubtree(root.right,subRoot)};functionisSameTree(s,t){if(!s&&!t){returntrue}if(!s||!t){returnfalse}returns.val===t.val&&isSameTree(s.left,t.left)&&isSameTree(s.right,t.right)}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/23 4:34:40

5个必学技巧!让你的点云可视化性能提升200%

5个必学技巧!让你的点云可视化性能提升200% 【免费下载链接】rerun Visualize streams of multimodal data. Fast, easy to use, and simple to integrate. Built in Rust using egui. 项目地址: https://gitcode.com/GitHub_Trending/re/rerun 你是否在加载…

作者头像 李华
网站建设 2026/9/22 5:11:35

轻量级图表库uPlot完全指南:解锁高性能可视化新境界

轻量级图表库uPlot完全指南:解锁高性能可视化新境界 【免费下载链接】uPlot 📈 A small, fast chart for time series, lines, areas, ohlc & bars 项目地址: https://gitcode.com/gh_mirrors/up/uPlot 想要在网页中流畅展示大量时间序列数据…

作者头像 李华
网站建设 2026/9/23 0:47:20

35、本地化与国际化文本函数详解

本地化与国际化文本函数详解 1. 字符串转换操作 在处理输入字符串时,根据 XIMStringConversionOperation 的不同类型,客户端的操作也有所不同: - 当 XIMStringConversionOperation 为 XIMStringConversionSubstitution 时,客户端必须从自身缓冲区中删除待转换的字…

作者头像 李华
网站建设 2026/9/23 5:14:20

AdGuard Home配置优化实战指南:从新手到专家的5个关键步骤

AdGuard Home配置优化实战指南:从新手到专家的5个关键步骤 【免费下载链接】AdGuardHome Network-wide ads & trackers blocking DNS server 项目地址: https://gitcode.com/gh_mirrors/ad/AdGuardHome 你是否遇到过AdGuard Home安装后广告拦截效果不佳&…

作者头像 李华
网站建设 2026/9/22 15:44:40

3步上手FLAN-T5 XL:从零开始掌握强大语言模型

3步上手FLAN-T5 XL:从零开始掌握强大语言模型 【免费下载链接】flan-t5-xl 项目地址: https://ai.gitcode.com/hf_mirrors/google/flan-t5-xl FLAN-T5 XL是Google推出的先进语言模型,基于T5架构进行指令微调,在文本生成、翻译、问答等…

作者头像 李华
网站建设 2026/9/23 1:43:23

5分钟快速上手:awesome-godot项目带你玩转游戏开发

5分钟快速上手:awesome-godot项目带你玩转游戏开发 【免费下载链接】awesome-godot A curated list of free/libre plugins, scripts and add-ons for Godot 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-godot 想要轻松入门游戏开发却不知从何开始…

作者头像 李华