zoukankan      html  css  js  c++  java
  • 面试题:树的子结构

    题目描述

    思路:先在A树中先找到和B树根节点一样的值 然后判断二者结构是否相同

    public class Solution {
        public boolean HasSubtree(TreeNode root1,TreeNode root2) {
            boolean result=false;
            if(root1!=null&&root2!=null){
                if(root1.val==root2.val)
                    result=doesTree1Tree2(root1,root2);
                if(!result) {result=HasSubtree(root1.left,root2);}
                if(!result) {result=HasSubtree(root1.right,root2);}
            }
            return result;
        }
        public boolean doesTree1Tree2(TreeNode root1,TreeNode root2) {
            if(root1==null&&root2!=null) return false;
            if(root2==null) return true;
            if(root1.val!=root2.val) return false;
            return doesTree1Tree2(root1.left,root2.left)&&doesTree1Tree2(root1.right,root2.right);
        }
    }
  • 相关阅读:
    UVa 11389
    uva 1418
    uva 10905 Children's Game
    uva 471
    UVA 1508
    Uva120 Stacks of Flapjacks
    UVA 10020 Minimal coverage
    UVA434
    UVa 311
    决策树算法
  • 原文地址:https://www.cnblogs.com/Aaron12/p/9533127.html
Copyright © 2011-2022 走看看