二叉树的深度

二叉树的深度:肯定有好多深度,然后比较得出最深的那一条,按照递归思想也就是两条深度,左子树和右子树

/**
 * 二叉树的深度
 */
public class Main {
    public static int TreeDepth(TreeNode root) {
        if (root == null) {
            return 0;
        }
        if (root.left == null && root.right == null) {
            return 1;
        }
        if (root.left == null) {
            return TreeDepth(root.right) + 1;
        }
        if (root.right == null) {
            return TreeDepth(root.left) + 1;
        }
        return max(TreeDepth(root.left), TreeDepth(root.right));
    }

    public static int max(int num1, int num2) {
        return num1 > num2 ? num1 : num2;
    }
    
}
class TreeNode {
    int data;
    TreeNode left;
    TreeNode right;
    TreeNode(int data){
        this.data=data;
        this.left=null;
    }
}

 

posted @ 2019-09-15 08:24  _SpringCloud  阅读(15)  评论(0编辑  收藏  举报  来源