天天看點

二叉樹的深度

輸入一棵二叉樹,求該樹的深度。從根結點到葉結點依次經過的結點(含根、葉結點)形成樹的一條路徑,最長路徑的長度為樹的深度。

遞歸函數以參數節點root為根節點的子樹的深度

public class TreeNode {
    int val = 0;
    TreeNode left = null;
    TreeNode right = null;
 
    public TreeNode(int val) {
        this.val = val;
 
    }
 
}      
public class depthTree {
    public int TreeDepth(TreeNode root) {
        if (root == null) {
            return 0;
        }
        int depth;
        if (this.TreeDepth(root.left) > this.TreeDepth(root.right)) {
            return 1 + this.TreeDepth(root.left);
        }
        else {
            return 1 + this.TreeDepth(root.right);
        }
    }
}      

繼續閱讀