关于java:另一个树的子树leetcode572

题目形容

给定两个非空二叉树 s 和 t,测验 s 中是否蕴含和 t 具备雷同构造和节点值的子树。s 的一个子树包含 s 的一个节点和这个节点的所有子孙。s 也能够看做它本身的一棵子树。

示例 1:
给定的树 s:

 3
/ \

4 5
/ \
1 2
给定的树 t:

4
/ \
1 2
返回 true,因为 t 与 s 的一个子树领有雷同的构造和节点值。

解题思路

双层递归
1、对节点、左节点、右节点 都对t进行递归,只有有一个成立即胜利 ||
2、对两树的比照进行递归,root节点进行比照 空、值比照,而后再进行左右递归,所有节点都雷同,且数量雷同能力返回true, &&

语言积攒和技巧

想通了就很简略,别离进行解决
在解决根节点和左右节点关系的时候,要思考分明,用||和&&来解决,代码简洁明了

代码链接

https://github.com/lunaDolphi…
https://github.com/lunaDolphi…

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理