• 二叉树的深度
    • 题目
    • 解题思路

    二叉树的深度

    题目

    牛客网

    输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。

    解题思路

    1. 深度优先遍历
    1. public int TreeDepth(TreeNode root) {
    2. int[] max = {0};
    3. depth(root, max, 1);
    4. return max[0];
    5. }
    6. private void depth(TreeNode root, int[] max, int curDepth) {
    7. if (root == null) return;
    8. if (curDepth > max[0]) max[0] = curDepth;
    9. depth(root.left, max, curDepth + 1);
    10. depth(root.right, max, curDepth + 1);
    11. }