104. 二叉树的最大深度
题目地址
要求一个二叉树的深度,一开始想复杂了,总想通过遍历查深度,导致一直出错,最后参考了deepseek,先给出代码:
class Solution(object):
def maxDepth(self, root):
if not root:
return 0
left_depth = self.maxDepth(root.left)
right_depth = self.maxDepth(root.right)
return max(left_depth, right_depth) + 1
大彻大悟了,代码的原理是计算子树的左右子树长度,取其中最长的那个。
总结心得:
设计迭代应该从最小的元素开始设计,比如这题,在设计时应该以一个最简单的树开始设计,就是比较左右树哪个长,从而获得树的最大深度。基于这样再设计迭代。

807

被折叠的 条评论
为什么被折叠?



