题解 | #求二叉树的层序遍历#
求二叉树的层序遍历
http://www.nowcoder.com/practice/04a5560e43e24e9db4595865dc9c63a3
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param root TreeNode类
# @return int整型二维数组
#
class Solution:
def levelOrder(self , root: TreeNode) -> List[List[int]]:
# write code here
ans=[[root.val]]
deque=[[root]]
for i_deque in deque:
child=[]
child_val=[]
for root in i_deque:
left,right = root.left,root.right
if left:
child.append(left)
child_val.append(left.val)
if right:
child.append(right)
child_val.append(right.val)
if child:
deque.append(child)
ans.append(child_val)
return ans
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param root TreeNode类
# @return int整型二维数组
#
class Solution:
def levelOrder(self , root: TreeNode) -> List[List[int]]:
# write code here
ans=[[root.val]]
deque=[[root]]
for i_deque in deque:
child=[]
child_val=[]
for root in i_deque:
left,right = root.left,root.right
if left:
child.append(left)
child_val.append(left.val)
if right:
child.append(right)
child_val.append(right.val)
if child:
deque.append(child)
ans.append(child_val)
return ans