aboutsummaryrefslogtreecommitdiff
path: root/SameTree.java
diff options
context:
space:
mode:
authorMichael Hunteman <michael@huntm.net>2022-10-02 12:22:08 -0500
committerMichael Hunteman <michael@huntm.net>2022-10-02 12:22:08 -0500
commit74375974965fa3a3e43b49a50bbf3ed1dbbc87c7 (patch)
tree583cac29ade75f14677286d2b595d39b1634eb4f /SameTree.java
parent3cf6cd56951542e9096d0ca58fc332053c3f74c2 (diff)
Add Same Tree
Diffstat (limited to 'SameTree.java')
-rw-r--r--SameTree.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/SameTree.java b/SameTree.java
new file mode 100644
index 0000000..50119b9
--- /dev/null
+++ b/SameTree.java
@@ -0,0 +1,27 @@
+import java.lang.*;
+import java.util.*;
+import node.*;
+
+class SameTree {
+ public static boolean isSame(TreeNode p, TreeNode q) {
+ if (p == null && q == null)
+ return true;
+ else if (p == null || q == null)
+ return false;
+ else if (p.val != q.val)
+ return false;
+ boolean l = isSame(p.left, q.left);
+ boolean r = isSame(p.right, q.right);
+ return l && r;
+ }
+
+ public static void main(String[] args) {
+ TreeNode leftLeaf = new TreeNode(9);
+ TreeNode rightLeaf = new TreeNode(7);
+ TreeNode root = new TreeNode(3, leftLeaf, rightLeaf);
+ TreeNode leftClone = new TreeNode(9);
+ TreeNode rightClone = new TreeNode(9);
+ TreeNode clone = new TreeNode(3, leftClone, rightClone);
+ System.out.println(isSame(root, clone));
+ }
+}