【题目描述】
给定一个二叉树 root
,返回其最大深度。
二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。
【测试用例】
示例1:
输入:root = [3,9,20,null,null,15,7]
输出:3
示例2:
输入:root = [1,null,2]
输出:2
【思路分析】
从根节点到最远的叶子节点的长度,只有两种情况,左子树最长或者右子树最长。所以很明显就要把左子树和右子树分开递归,然后取最长的那一个就是该树的最大深度。
代码逻辑也很简单,如果传入maxDepth函数的节点为空,则返回0;否则分别递归该节点的左右子树,然后比较其递归结果,返回大的那个结果+1。