输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)
树的子结构
http://www.nowcoder.com/questionTerminal/6e196c44c7004d15b1610b9afca8bd88
根据两个树的前序遍历字符串,如果包含子串,则B是A的子结构
/** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } */ public class Solution { public String preReadTree(TreeNode root) { String a=""; if(root!=null) a+= root.val; if(root.left!=null) a+=preReadTree(root.left); if(root.right!=null) a+=preReadTree(root.right); return a; } public boolean HasSubtree(TreeNode root1,TreeNode root2) { if(root1==null||root2==null) return false; String str1=""; String str2=""; str1=preReadTree(root1); str2=preReadTree(root2); return str1.contains(str2); } }