100天每日一题(day13)
解答:还是用递归(DFS),设置depth记录层数(DFS,基本上都有两个参数,一个root,另一个存储或者记录)
# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
class Solution:
def levelOrderBottom(self, root: TreeNode) -> List[List[int]]:
if not root:
return []
out=[]
def DFS(root,depth):
if not root:
return
if len(out)<depth+1:
out.append([])
out[depth].append(root.val)
DFS(root.left,depth+1)
DFS(root.right,depth+1)
DFS(root,0)
return out[::-1]