首页 > 代码库 > [leetcode]_Maximum Depth of Binary Tree

[leetcode]_Maximum Depth of Binary Tree

第三道树的题目,我还是不会,我擦,怎么递归算法还是不能很好理解。看来还得好好研究下递归算法。

题目:求一棵树的最大深度。

思路:递归地求取左子树最大深度 和 右子树最大深度,返回较大值即为 整棵树的 最大深度。

代码:

public int maxDepth(TreeNode root) {
        if(root == null) return 0;
        
        int leftHeight = 1,rightHeight = 1;
        if(root.left != null) leftHeight += maxDepth(root.left);
        if(root.right != null) rightHeight += maxDepth(root.right);
        if(leftHeight > rightHeight) return leftHeight;
        else return rightHeight;
    }