Binary Tree Zigzag Level Order Traversal
Given a binary tree, return the zigzag level order traversal of its nodes’ values. (ie, from left to right, then right to left for the next level and alternate between).
Example
For example: Given binary tree [3,9,20,null,null,15,7],
Solution
class Solution:
def zigzagLevelOrder(self
, root
: TreeNode
) -> List
[List
[int]]:
ret
, level
= [], [root
]
reverse
= -1
while root
and level
:
ret
.append
([n
.val
for n
in level
][::-1*reverse
])
level
= [kid
for n
in level
for kid
in [n
.left
, n
.right
] if kid
]
reverse
*= -1
return ret