整体来说很简单的递归套路,首先我先假设 我可以获得当前 X 节点 左右 子树的最大深度
那么 当前 X 节点的最大深度 即为 左右子树 最大深度中 最大值+1
那么求整棵树的最大深度即 X=root
直接上递归函数即可

import java.util.*;

/*
 * public class TreeNode {
 *   int val = 0;
 *   TreeNode left = null;
 *   TreeNode right = null;
 * }
 */

public class Solution {
    /**
     * 
     * @param root TreeNode类 
     * @return int整型
     */
    public int maxDepth (TreeNode root) {
        // write code here
        if(root==null){
            return 0;
        }
        int leftMax=maxDepth(root.left);
        int rightMax=maxDepth(root.right);
        int max=Math.max(leftMax,rightMax)+1;
        return max;
    }


}