美文网首页
【剑指26】树的子结构

【剑指26】树的子结构

作者: 浅浅星空 | 来源:发表于2019-07-15 22:03 被阅读0次

题目描述

输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)

分析

public class Solution {
    public  boolean HasSubtree(TreeNode root1, TreeNode root2) {
        if (root1 == null || root2 == null) return false;
        boolean result = false;
        if (root1.val == root2.val) {
            result = isSubtree(root1, root2);
        }
        if (!result) {
            result = HasSubtree(root1.left, root2);
        }
        if (!result) {
            result = HasSubtree(root1.right, root2);
        }
        return result;
    }

    public  boolean isSubtree(TreeNode root1, TreeNode root2) {
        if (root2 == null) return true;
        if (root1 == null) return false;
        if (root1.val != root2.val) return false;
        return isSubtree(root1.left, root2.left) && isSubtree(root1.right, root2.right);
    }
}

class TreeNode {
    int val = 0;
    TreeNode left = null;
    TreeNode right = null;

    public TreeNode(int val) {
        this.val = val;

    }

}

相关文章

  • 2022-04-30

    剑指 Offer 26. 树的子结构[https://leetcode.cn/problems/shu-de-zi...

  • 【剑指26】树的子结构

    题目描述 输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 分析

  • 剑指 Offer 26 树的子结构

    题意:输入两棵二叉树A和B,判断B是不是A的子结构。(约定空树不是任意一个树的子结构)B是A的子结构, 即 A中有...

  • 《剑指Offer》-26.树的子结构

    题干 输入两棵二叉树A和B,判断B是不是A的子结构。二叉树节点定义如下: 二叉树A 二叉树B 解题思路 获取B的根...

  • 剑指 Offer 26. 树的子结构

    主要思路:先用dfs来比较以root1和root2为头节点的子树能不能符合题意,如果不能再去递归引入root1.l...

  • 剑指 Offer 26. 树的子结构

    题目 输入两棵二叉树A和B,判断B是不是A的子结构。(约定空树不是任意一个树的子结构)B是A的子结构, 即 A中有...

  • [剑指offer-26]树的子结构

    题目描述输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 解法 首先,约...

  • 剑指 Offer 26. 树的子结构

    给你两棵二叉树 root 和 subRoot 。检验 root 中是否包含和 subRoot 具有相同结构和节点值...

  • 剑指 Offer 26. 树的子结构

    输入两棵二叉树A和B,判断B是不是A的子结构。(约定空树不是任意一个树的子结构) B是A的子结构, 即 A中有出现...

  • [剑指offer] 树的子结构

    题目描述 输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 解题思路 递...

网友评论

      本文标题:【剑指26】树的子结构

      本文链接:https://www.haomeiwen.com/subject/ltcokctx.html