剑指OFFER:26:树的子结构
输入两棵二叉树A和B,判断B是不是A的子结构。(约定空树不是任意一个树的子结构)
B是A的子结构, 即 A中有出现和B相同的结构和节点值。
示例 1:
输入:A = [1,2,3], B = [3,1]
输出:false
示例 2:
输入:A = [3,4,5,1,2], B = [4,1]
输出:true
限制:
0 <= 节点个数 <= 10000
Related Topics
树
深度优先搜索
二叉树
深度优先遍历
- 递归遍历A树的每一个节点是否和B的根节点相等
- 如果相等,则进行比较是否是子结构,抽象出一个方法进行比较。
class Solution {
//递归遍历A的每一个节点是否等于B,相等则判断是否为子节点
public boolean isSubStructure(TreeNode A, TreeNode B) {
boolean result