您的位置:首页 > 其它

leetcode之Binary Tree Zigzag Level Order Traversal

2015-12-13 12:43 417 查看
这题就是在之前的基础上加个奇偶数的判断开关。不难。代码如下:
# Definition for a binary tree node.
# class TreeNode(object):
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

class Solution(object):
def zigzagLevelOrder(self, root):
"""
:type root: TreeNode
:rtype: List[List[int]]
"""
if  not root:
return []
a = []
queue = [root]
b = 0
while queue:
if b == 0:
a.append([q.val for q in queue])
else:
a.append([q.val for q in queue][::-1])
queue = [q for node in queue for q in (node.left, node.right) if q]
if b == 0:
b = 1
else:
b = 0
return a
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息