JZ26 树的子结构
import java.util.*;
public class Solution {
public boolean solve(TreeNode root1,TreeNode root2){
if(root2==null){
return true;
}
if(root1==null){
return false;
}
if(root1.val!=root2.val){
return false;
}
return solve(root1.left,root2.left)&&solve(root1.right,root2.right);
}
public boolean HasSubtree(TreeNode root1,TreeNode root2) {
if(root1==null||root2==null){
return false;
}
boolean ret=false;
if(root1.val==root2.val){
ret=solve(root1,root2);
}
if(ret==false){
ret=HasSubtree(root1.left,root2);
}
if(ret==false){
ret=HasSubtree(root1.right,root2);
}
return ret;
}
}