zoukankan      html  css  js  c++  java
  • LeetCode OJ

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

    下面是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 here
    19         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     }
    有问题可以和我联系,bettyting2010#163 dot com
  • 相关阅读:
    课堂练习
    日程管理测试用例
    日程管理APP的测试计划和测试矩阵
    日程管理Bug Report
    图书管理系统活动图
    团队如何做决定?
    课堂练习
    课堂练习(NABCD Model)
    课堂练习
    日程管理的测试计划和测试矩阵
  • 原文地址:https://www.cnblogs.com/echoht/p/3707967.html
Copyright © 2011-2022 走看看