LeetCode求二叉树的最大深度


解题思路:采用后序遍历和递归的想法。依次遍历树的每一个节点。遍历到节点为空时,返回0;
然后判断两子树的深度取其最大值再加1。返回其深度值。

步骤

  1. 判断当前树是否为空,为空返0。
  2. 如果不为空,分别获取其左子树和右子树的长度。
  3. 获取其左右子树长度的最大值再加1。
  4. 返回其值。

代码:

class Solution {
    public int maxDepth(TreeNode root) {
        if(root==null){
            return 0;
        }else{
            //递归
            int rightDepth=maxDepth(root.left)+1;
            int leftDepth=maxDepth(root.right)+1;
           //取左右子树的深度的最大值
            return Math.max(leftDepth,rightDepth);
           
        }
    }
}
posted @ 2020-12-14 17:23  UZI永远地神  阅读(71)  评论(0)    收藏  举报