一、题目内容
二、题解
解法1:
思路
递归,新增一个函数判断,A是否从root开始,包含B,如果不包含,则看下A.left与A.right
代码
public class Solution {public boolean isSubStructure(TreeNode A, TreeNode B) {return (A != null && B != null) && (recur(A, B) || isSubStructure(A.left, B) || isSubStructure(A.right, B));}/*** 判断是否包含** @param A* @param B* @return*/public boolean recur(TreeNode A, TreeNode B) {if (B == null) {return true;}if (A == null || A.val != B.val) {return false;}return recur(A.left, B.left) && recur(A.right, B.right);}}
