博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode OJ - Minimum && Maximum Depth of Binary Tree
阅读量:6997 次
发布时间:2019-06-27

本文共 1451 字,大约阅读时间需要 4 分钟。

这两道题用递归的解法都很简单,只是稍有不同。

下面是AC代码:

1  /** 2      * Given a binary tree, find its minimum depth. 3      * the minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node. 4      * @param root 5      * @return 6      */ 7     public int minDepth(TreeNode root){ 8         //the boundary condition 9         if(root == null)10             return 0;11         return minDepthRec(root);12     }13     private int minDepthRec(TreeNode root){14         if(root == null)15             return 0;16         if(root.left == null && root.right == null)17             return 1;18         //the condition judged here is very important here19         if(root.left == null)20             return minDepthRec(root.right)+1;21         if(root.right == null)22             return minDepthRec(root.left)+1;23         return Math.min(minDepthRec(root.left), minDepthRec(root.right))+1;24     }
1 /** 2      * Given a binary tree, find its maximum depth. 3      * The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node. 4      * @param root 5      * @return 6      */ 7     public int maxDepth(TreeNode root){ 8         if(root == null) 9             return 0;10         if(root.left == null && root.right == null)11             return 1;12         return Math.max(maxDepth(root.left), maxDepth(root.right))+1;13     }

 

转载于:https://www.cnblogs.com/echoht/p/3707967.html

你可能感兴趣的文章