leetcode 572. 另一个树的子树(Java版)
题目
https://leetcode-cn.com/problems/subtree-of-another-tree/
题解
方法一:深度优先搜索暴力匹配
/*** 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 isSubtree(TreeNode s, TreeNode t) {if (s == null) return false;else if (s.val == t.val && isSameTree(s, t)) return true;else return isSubtree(s.left, t) || isSubtree(s.right, t);}public boolean isSameTree(TreeNode n1, TreeNode n2) {if (n1 == null && n2 == null) return true;if (n1 == null || n2 == null) return false;return n1.val == n2.val && isSameTree(n1.left, n2.left) && isSameTree(n1.right, n2.right);}
}
其他方法(详见官方题解)
leetcode 572. 另一个树的子树(Java版)相关推荐
- LeetCode 572. 另一个树的子树 思考分析
题目 给定两个非空二叉树 s 和 t,检验 s 中是否包含和 t 具有相同结构和节点值的子树.s 的一个子树包括 s 的一个节点和这个节点的所有子孙.s 也可以看做它自身的一棵子树. 示例 1: 给定 ...
- LeetCode 572. 另一个树的子树(二叉树迭代器)
1. 题目 给定两个非空二叉树 s 和 t,检验 s 中是否包含和 t 具有相同结构和节点值的子树.s 的一个子树包括 s 的一个节点和这个节点的所有子孙.s 也可以看做它自身的一棵子树. 示例 1: ...
- leetcode学习打卡--572. 另一个树的子树(递归,二叉树遍历)
572. 另一个树的子树 写在最前面,其实5月每日一题都做了,但是有时候没时间写博客就没记录了,唉最近越来越忙. 上题目上题目 给定两个非空二叉树 s 和 t,检验 s 中是否包含和 t 具有相同结构 ...
- leetcode题库572 -- 另一个树的子树
给定两个非空二叉树 s 和 t,检验 s 中是否包含和 t 具有相同结构和节点值的子树.s 的一个子树包括 s 的一个节点和这个节点的所有子孙.s 也可以看做它自身的一棵子树. 示例 1: 给定的树 ...
- 572. 另一个树的子树
参考链接 t是s的子树有三种情况: t 和 s相等(t和s的根值相等,t的左子树与s的左子树相等且t的右子树与s的右子树相等) t 在s 的左子树里面 t在s 的右子树里面 class TreeNod ...
- 二叉树题目---3 另一个树的子树 AND 二叉树最大深度
另一个树的子树 思路 两个数都遍历一遍,找到一个根结点相同时,判断以这个根结点为首的二叉树是否相等 前序遍历 判断两棵树是否相同 对于返回值的处理是难点 bool isSameTree(struct ...
- LeetCode另一棵树的子树
572. 另一棵树的子树 给你两棵二叉树 root 和 subRoot .检验 root 中是否包含和 subRoot 具有相同结构和节点值的子树.如果存在,返回 true :否则,返回 false ...
- 判断一棵树是否是另一棵树的子树 java实现
这是一个很经典的算法题,听起来好像挺难的,但是其实很简单.我觉得我们接触到的问题,并没有难题,只有复杂不复杂.一个再难的问题,也可以分解成一个个简单的问题,再将这些简单的问题交给不同的人去做就构成了一 ...
- LSM树(日志结构合并树)总结-java版
目录 为什么要有LSM树 数据库存储引擎索引的底层结构 BTree的随机写特点 LSM树的诞生背景 简介 LSM树与B树的差异 LSM树优化 LSM树基本原理 LevelDB中的LSM HBase中的 ...
最新文章
- 18个有趣的API供你的前端开发测试之用
- w ndows7防火墙文件名,Windows7中的防火墙是什么? 爱问知识人
- 通用的数据访问 OleDbHelper 通用的数据访问接口 IDbHelper(转)
- linux查看文件的编码格式的方法 set fileencoding
- CCNA-第十篇-VLAN-下
- python整形怎么切片_python 切片操作 slice
- 高可用 kubernetes 集群部署实践
- HDU3788 ZOJ问题
- 小米10超大杯本月亮相稳了:无线快充纪录将再次刷新
- 【转】15个超炫的HTML5效果
- 【多线程系列】之生产者消费者问题
- 个人项目需求与分析——点菜系统App
- 组合模式Composite
- 【知识兔】自学Excel之4:窗口视图控制
- 为什么书上说是 TCP 四次挥手,但是实际会出现 TCP 三次挥手?
- 选中Checkbox,则向数组中增加其所属条目的某个属性值,取消选中,则删除。
- 小型企业办公耗材库存管理系统的设计与实现(一)
- 一文带你入门go语言
- 怎么给MP4加密、选用隐大师U盘
- 更改所有数据透视表的数据源