剑指offer 38.二叉树的深度

剑指offer 38.二叉树的深度

题目

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

思路

偷个懒,直接用递归,如果结点为空就不增长深度,不为空就返回子树的深度加一。

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class TreeNode {

int val = 0;
TreeNode left = null;
TreeNode right = null;

public TreeNode(int val) {
this.val = val;
}
}

public int TreeDepth(TreeNode root) {
if (root == null) {
return 0;
}
return Math.max(TreeDepth(root.left), TreeDepth(root.right)) + 1;
}
---本文结束,感谢阅读---