LeetCode—剑指Offer:二叉树的深度(后序遍历)

二叉树的深度(简单)

2020年9月9日

题目来源:力扣

在这里插入图片描述

解题
每进一层就加一

  • 详细写法
/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode(int x) { val = x; }
 * }
 */
class Solution {
    
    
    private int max;
    public int maxDepth(TreeNode root) {
    
    
        dfs(root,1);
        return max;
    }
    private void dfs(TreeNode root,int cur){
    
    
        if(root==null) return;
        dfs(root.left,cur+1);
        dfs(root.right,cur+1);
        max=Math.max(max,cur);
    }
}
  • 简洁写法
/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode(int x) { val = x; }
 * }
 */
class Solution {
    
    
    public int maxDepth(TreeNode root) {
    
    
        if(root==null) return 0;
        return Math.max(maxDepth(root.left),maxDepth(root.right))+1;
    }
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_41541562/article/details/108482689