Skip to content

Commit 98b56bf

Browse files
committed
Add Solution.java to problems 0572
1 parent 87349fb commit 98b56bf

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/**
2+
* Definition for a binary tree node.
3+
* public class TreeNode {
4+
* int val;
5+
* TreeNode left;
6+
* TreeNode right;
7+
* TreeNode(int x) { val = x; }
8+
* }
9+
*/
10+
class Solution {
11+
public boolean isSubtree(TreeNode s, TreeNode t) {
12+
13+
if (t == null) return true;
14+
if (s == null) return false;
15+
16+
if (s.val != t.val){
17+
return isSubtree(s.left, t) || isSubtree(s.right, t);
18+
}
19+
return isSameTree(s, t) || isSubtree(s.left, t) || isSubtree(s.right, t);
20+
}
21+
22+
private boolean isSameTree(TreeNode root1, TreeNode root2){
23+
if(root1 == null && root2 == null) return true;
24+
if(root1 == null || root2 == null) return false;
25+
26+
if(root1.val != root2.val) return false;
27+
return isSameTree(root1.left, root2.left) && isSameTree(root1.right, root2.right);
28+
}
29+
}

0 commit comments

Comments
 (0)