原题目
Given a binary tree, find its maximum depth.
The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.
Note: A leaf is a node with no children.
Example:
Given binary tree
[3,9,20,null,null,15,7]
,3 / \ 9 20 / \ 15 7
return its depth = 3.
思路
边界条件:root == None
递归求二叉树的深度,返回左右孩子为树根深度较大的那一个再加一
第一遍解法
class Solution:
def maxDepth(self, root):
return 1 + max(self.maxDepth(root.left), self.maxDepth(root.right)) if root else 0
网上好的解法
自己可以改进的地方
最简代码