aboutsummaryrefslogtreecommitdiff
path: root/MaxDepthOfTree.java
diff options
context:
space:
mode:
authorMichael Hunteman <michael@huntm.net>2022-10-01 19:05:51 -0500
committerMichael Hunteman <michael@huntm.net>2022-10-01 19:05:51 -0500
commit3cf6cd56951542e9096d0ca58fc332053c3f74c2 (patch)
tree8a3d58acccb451ee797f1dd2b800dea30a009522 /MaxDepthOfTree.java
parent27cd471ef172362cfdf8621c0c9a1c4edd35863e (diff)
Add Max Depth of Tree
Diffstat (limited to 'MaxDepthOfTree.java')
-rw-r--r--MaxDepthOfTree.java22
1 files changed, 22 insertions, 0 deletions
diff --git a/MaxDepthOfTree.java b/MaxDepthOfTree.java
new file mode 100644
index 0000000..b1597cf
--- /dev/null
+++ b/MaxDepthOfTree.java
@@ -0,0 +1,22 @@
+import java.lang.*;
+import java.util.*;
+import node.*;
+
+class MaxDepthOfTree {
+ public static int maxDepth(TreeNode root) {
+ if (root.left == null || root.right == null)
+ return 1;
+ int l = maxDepth(root.left) + 1;
+ int r = maxDepth(root.right) + 1;
+ return l > r ? l : r;
+ }
+
+ public static void main(String[] args) {
+ TreeNode leftLeaf = new TreeNode(9);
+ TreeNode middleLeaf = new TreeNode(15);
+ TreeNode rightLeaf = new TreeNode(7);
+ TreeNode parent = new TreeNode(20, middleLeaf, rightLeaf);
+ TreeNode root = new TreeNode(3, leftLeaf, parent);
+ System.out.println(maxDepth(root));
+ }
+}