def levelOrder(self, root):
"""
:type root: TreeNode
:rtype: List[List[int]]
"""
res = []
stack = [root]
if not root:
return res
while stack: #while为了控制深度
level = [] #放在for循环外,为了每一层结束之后清空
for i in range(len(stack)): #for循环就是控制循环一层所有节点的,也就是宽度
node = stack.pop(0)
level.append(node.val) #放在for循环里,记录每一层的所有节点
if node.left:
stack.append(node.left)
if node.right:
stack.append(node.right)
res.append(level)
return res
04-19
391
11-12
2078