代码随想录算法训练营 | 博客打卡
题目链接:leetcode 104. 二叉树的最大深度
注:仅为个人笔记,难以细致且通俗。
可视化还挺难。
func maxDepth(root *TreeNode) int {
if root == nil {
return 0 // 返回值是上一个节点的深度,叶子节点的深度当然是0
}
max := func(a, b int) int {
if a > b {
return a
}
return b
}
leftDepth := maxDepth(root.Left)
rightDepth := maxDepth(root.Right)
return max(leftDepth, rightDepth) + 1 // 在归返的时候增加深度。
}