题目: 给定一个二叉树,确定其最大深度。
思路: 使用树结构本身就涉及的递归思想,进行求解即可。要把树的所有情况都涉及到,刚开始刷题,所以代码没有什么技巧,就只涉及到最简单的递归以及所有情况的考虑(从根到叶!)
code:
class Solution:
def maxDepth(self, root: TreeNode) -> int;
if root == None:
return 0
if root.left == None and root.right == None:
return 1
m, n = 0, 0
if root.left != None:
m += self.maxDepth(root.left) + 1
if root.right != None:
n += self.maxDepth(root.right) + 1
return max(m, n)
一定注意从根到叶的所有情况都要遍历!
后期更新树结构相关知识点汇总和算法!